我有一个崩溃小型转储要分析。我的程序是多线程 Qt5 应用程序。我不是调试专家,但通常我可以很容易地找到程序失败的地方,但这次我不能。我在 Visual Studio 2010 中打开了转储文件,单击“仅使用本机调试”,它向我显示了问题所在:它是位置为“__CxxUnhandledExceptionFilter”的线程。调用栈是这样的:
msvcr100.dll()!_abort()
msvcr100.dll()!terminate()
program.exe!__CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS * pPtrs)
KERNELBASE.dll!_UnhandledExceptionFilter()
ntdll.dll!__RtlUserThreadStart()
ntdll.dll!__RtlUserThreadStart()
我希望看到带有程序函数和 Qt 内部函数的堆栈。但是这个调用堆栈没有告诉我任何有趣的事情。所以请告诉我什么是“ExceptionFilter”线程,我怎样才能找到程序实际失败的地方?