0

我正在使用 DebugDiag 分析 Windows 上的故障转储。

这是报告摘要说明:

在 XXXX.dmp 中,来自 Microsoft Corporation 的 C:\Windows\System32\msvcr120.dll 中 msvcr120!abort+4a 的汇编指令在线程 26 上导致了未知异常 (0x40000015)

调用堆栈是:

ntdll!NtWaitForMultipleObjects+a 
KERNELBASE!WaitForMultipleObjectsEx+e8 
kernel32!WaitForMultipleObjectsExImplementation+b3 
kernel32!WerpReportFaultInternal+215 
kernel32!WerpReportFault+77 
kernel32!BasepReportFault+1f 
kernel32!UnhandledExceptionFilter+1fc 
msvcr120!_call_reportfault+b6 
msvcr120!abort+4a 
msvcr120!terminate+1e 
msvcp120!_Call_func$catch$0+13 
msvcr120!_CallSettingFrame+20 
msvcr120!__CxxCallCatchBlock+f5 
ntdll!RcConsolidateFrames+3 
msvcp120!_Call_func+14 
msvcr120!_callthreadstartex+17 
msvcr120!_threadstartex+102 
kernel32!BaseThreadInitThunk+d 
ntdll!RtlUserThreadStart+1d

伙计们,我能对这个崩溃转储做什么?

干杯,

多伦

4

1 回答 1

1

您正在使用 C++ try catch 语句,它或多或少地添加了异常处理代码 msvcr120!__CxxCallCatchBlock+f5 表明了这一点。

kernel32!UnhandledExceptionFilter+1fc msvcr120!_call_reportfault+b6

然后可能会引发异常并且不会在您的代码中处理。您可能希望使用应用程序的源更深入地检查 windbg 中的异常。如果这是一个托管应用程序,那么您可能需要使用 SOS 扩展。

于 2016-05-17T11:34:42.407 回答