出于测试目的,我正在 Visual Studio 2010 中调试一个小型转储(使用 .dump/ma 创建)。
我有可用于该转储的符号,但没有当前的二进制文件(它是可执行文件)。
VS2010 中的 Module 窗口显示 ' 找不到匹配的二进制文件 ' 这似乎是对的,因为在目标机器上的路径上找不到它。
我仍然想加载符号,所以我右键单击模块,选择“从符号路径加载符号”(其中包含正确 pdb 的路径),但会弹出一个对话框,要求我选择二进制文件。我无法为我的模块加载符号。
为什么VS需要图像文件? WinDbg 能够加载符号文件并毫无问题地向我显示错误堆栈。
最佳答案
我认为这是设计使然。 Visual Studio 是由一个团队设计和开发的,而 WinDbg 是由另一个团队设计和开发的,
http://msdn.microsoft.com/en-us/library/htzy3t6f.aspx
If you load a minidump file that was saved with a heap, Visual Studiocan load the symbols even if the application binary is not found. Minidump files without heaps need the binaries to load symbols.
如果你想让 Visual Studio 和 WinDbg 一样,你应该去 Microsoft Connect 并创建一个功能请求,
http://connect.microsoft.com/intro/
关于visual-studio-2010 - VS2010 : "No matching binary found" when trying to load symbols for crashdump,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12297660/