我们的应用程序崩溃 - 如何找到崩溃的原因?
问题描述:
我们有一个联系人同步应用程序会发生什么。在按下启动应用程序中同步主逻辑的按钮后不久,应用程序停止工作,Windows(本例中为7)表示我们的应用程序“已停止工作”,之后唯一的可能是通过按钮关闭应用程序题为“关闭应用程序”。我们的应用程序崩溃 - 如何找到崩溃的原因?
奇怪的是,在我的开发机器上,应用程序工作正常。它不会崩溃,不会抛出任何错误。但是,当打包成安装程序并安装在其他机器上时,它会停止工作,如上所述。
请让我知道哪些应用,我可以在调试时使用这个更好的,如何找到更多关于这个错误,是什么触发它,它如何可以解决等提前
感谢。
后编辑
这是在事件查看器日志打印出来:
Faulting application name: ourappname.exe, version: 1.2.9.0, time stamp: 0x4f3926c8
Faulting module name: ntdll.dll, version: 6.1.7600.16915, time stamp: 0x4ec49caf
Exception code: 0xc0000374
Fault offset: 0x000c33bb
Faulting process id: 0xecc
Faulting application start time: 0x01ccea61773d12e0
Faulting application path: C:\Program Files\path\to\ourappname.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: bb3977f0-5654-11e1-9a84-0800275ba797
这是否帮助?
答
设置global uncaught exception handler并记录错误。为了更好地衡量,您可以使用write a memory dump of your application并使用WinDbg以及SOS.dll来更精确地查看应用程序中发生了什么(dbghelp.dll与Windows调试工具中的WinDbg一起提供)。
+0
当应用程序崩溃时,全局异常处理程序不记录任何内容。这是否意味着这个例外没有被这篇文章中给出的两个例子所捕获?我还没有尝试写入内存转储。 – Andrei 2012-02-15 11:13:35
首先看看EventViewer的应用程序部分。在那里记录例外情况,并可能让您了解失败的情况。 – 2012-02-13 11:23:33
@PaulAlanTaylor我刚刚在问题中增加了更多信息。我没有看到任何可能导致我从EventViewer文件的正确方向。 – Andrei 2012-02-13 12:33:34
您是否检查过C:\ Users \ dre \ AppData \ Local \ Temp \ WER3F91.tmp.mdmp中的故障转储?是否附加了未处理的异常处理程序? – PVitt 2012-02-13 12:41:18