5

我有一个在另一台计算机上编译的可执行文件(本机 x86 代码)的故障转储(minidump,mdmp 格式)。我有对应于故障转储的 pdb + exe,它们位于故障转储旁边,调试器可以正确识别它们。pdb 在我的计算机上不可用的路径上引用源(例如E:\Project)。当我第一次打开故障转储时,调试器要求我提供源位置。我将它指向E:\B\Project我的计算机,但是一旦出现源窗口,我意识到我的选择是错误的(源是针对不同的产品分支的)。我想将调试器指向正确的位置E:\D\Project,但是调试器不再询问我。创建的故障转储没有解决方案、项目或选择文件。我已经搜索了注册表,但我没有找到E:\B\Project任何地方。

如何为 Visual Studio 调试器设置/更改源目录?

4

2 回答 2

6

我找到了一种方法,不是很直观,但它有效:

  • 创建一个新的 Visual C++ 项目和解决方案(它可以在任何地方创建,但 mdmp 文件旁边的位置似乎很方便)
  • 或使用通常用于构建可执行文件的 Visual C++ 项目和解决方案
  • Solution在(右键单击)> Common Properties> Debug Source Files>中设置源位置Directories containing source code
  • File使用> Open> File> 选择Dump Files作为过滤器打开故障转储

注意:互联网上的故障转储分析指南如果不够新,可能会产生误导,因为转储文件自 2010 年以来不再作为项目打开,而是作为文件打开。请参阅R Nitzel 在 MSDN Crash Dump Analysis 文章中的注释

于 2013-11-12T09:05:09.367 回答
3

您应该能够指定包含源代码的目录:(
Solution右键单击)> Common Properties> Debug Source Files>Directories containing source code

于 2013-11-12T08:49:15.987 回答