在我调试的程序崩溃后,我的 Temp 目录中留下了堆转储 *.mdmp 文件和 appcompat.txt。我知道 appcompat.txt 是一个错误报告。 有格式说明吗?
我的 appcompat.txt 列出了一些 DLL。假设崩溃的原因可能仅来自列出的 DLL 之一,我是否正确? 我能否将调试工作限制在 appcompat.txt 中列出的 DLL 上?
提前致谢!
最佳答案
minidump 文件对于诊断崩溃有更多的信息:
- 安装 Debugging Tools for Windows , 如果你还没有的话。
- 设置符号路径变量
_NT_SYMBOL_PATH
指向Microsoft symbol server - 运行
Windbg
并执行File -> Open Crash Dump
并找到您的.dmp
或.mdmp
文件 - 键入
!analyze -v
。
这将尝试隔离崩溃的位置。请注意,仅仅因为在特定的 dll 中发生了崩溃,并不意味着错误就存在于此——这可能是因为从您的应用程序代码中传入了一个无效参数。分析应该会向您展示一个有意义的堆栈和一个错误代码,这应该有助于找出崩溃的实际原因。
关于c++ - 程序崩溃 - 如何读取 appcompat.txt?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14335034/