5

我有一个包含许多项目的解决方案,其中一些位于解决方案路径之外(我使用 xcopy 将编译后的 dll 和 pdb 复制为构建后事件)!

如果我想进入 dll,它们位于我的解决方案之外:

“当前不会命中断点。没有为此文档加载任何符号”

  • 所有文件(dll + pdb + exe)都在同一个目录中
  • 源文件在不同的地方
  • 进入内部 dll 是可能的

还需要哪些步骤才能调试外部 dll?

4

1 回答 1

13

最简单的解释是 DLL 还没有加载。使用 Debug > Windows > Modules 窗口仔细检查您的假设,在列表中找到您尝试调试的 DLL。

如果您确实在那里找到了它,那么调试器可能会在读取它的 PDB 文件时遇到问题。通过右键单击 DLL 并单击符号加载信息来诊断。它向您显示调试器在哪里查找 PDB 文件。

在以后的 VS 版本中,还要检查同一窗口中的“用户代码”列。如果设置为“否”,则使用工具 > 选项 > 调试 > 常规,取消选中“仅启用我的代码”。

最后注意使用托管调试器来调试本机代码或其他方式。由于您忘记记录您要调试的代码类型,因此问题并不清楚。如果是这种情况,您需要启用混合模式调试。

于 2013-04-24T23:33:49.180 回答