【发布时间】:2010-09-14 14:02:11
【问题描述】:
我想知道是否有人知道如何在使用 C/C++ 编写的应用程序崩溃后打开 Windows *.dmp 文件。
【问题讨论】:
我想知道是否有人知道如何在使用 C/C++ 编写的应用程序崩溃后打开 Windows *.dmp 文件。
【问题讨论】:
如果您的意思是在系统崩溃后创建的由 Windows 创建的转储文件(小内存转储、内核内存转储或全内存转储),那么您需要 WinDBG
【讨论】:
使用Debugging Tools for Windows 时,请务必设置符号。对于 Microsoft 符号,请使用:SRV*DownstreamStore*http://msdl.microsoft.com/download/symbols
例如:SRV*c:\websymbols*http://msdl.microsoft.com/download/symbols
查看这些博客以了解有关调试的更多信息:
【讨论】:
使用 Visual Studio 的 File>Open Project 或免费的 WinDbg(Debugging Tools for Windows 的一部分)File>Open Crash Dump 选择 dmp 文件。
确保将工具配置为包含指向该应用程序的 PDB 调试符号位置的路径(您确实有符号吗?)。这两个工具都有一个线程和调用堆栈窗口,可以让您很好地了解崩溃发生的位置。包括源代码的路径也会有所帮助。
符号和源路径可以在 WinDbg 的文件菜单下设置。它隐藏在 Visual Studio 中的 Tools>Options>Debugging>Symbols 和 Tools>Options>Project and Solutions>VC++ Directores
下【讨论】:
您应该只需双击 .dmp 文件即可在 Visual Studio 中自动打开它。如果编译程序时生成的 .pdb 文件仍然存在,Visual Studio 应该能够自动从中加载符号。从那时起,您只需点击运行/调试 (F5) 即可开始查看 .dmp 文件。
【讨论】:
【讨论】: