18

我尝试在 Visual Studio 10 中调试程序,但遇到断点问题。我把*.dll文件对应的*.pdb文件放到同一个目录下。但是在检查模块时,我看到每个 DLL 文件都被签名为Cannot find or open the PDB file.

我该如何解决这个问题?如何检查 *.pdb 文件的预期位置?

4

5 回答 5

14

模块(Ctrl-D、M)是整理正在发生的事情的好地方,因此您处于正确的区域。

右键单击您希望找到 pdb 的模块/dll,然后选择Symbol Load Information

它应该在与您的 dll 相同的目录中开始查找,如果找到 pdb 将加载它或告诉您 pdb 文件与 dll 不匹配。

于 2011-12-07T13:20:41.330 回答
12

转到调试 -> 选项和设置 -> 调试 -> 符号,检查符号位置下的 Microsoft 符号服务器。见附图。

包括符号

于 2012-11-01T03:14:53.883 回答
6

我在VS2013中遇到了类似的问题......与PDB文件和IISEXPRESS有关。我尝试了几件事并最终通过这样做解决了它:

工具 > 选项 > 调试 > 符号,然后按“空符号缓存”按钮

重新运行我的应用程序后,Visual Studio 需要一段时间来重新加载所有符号,但它最终确实这样做了,问题得到了解决!

于 2014-09-13T14:49:32.903 回答
2

就我而言,我正在调试一个单击一次的 Windows 应用程序。在模块中Symbol Load Information,它告诉我 pdb 与当前附加的图像不同步。我必须查看整个列表,而不仅仅是顶部或底部的项目,以获得该错误文本。

这告诉我重新编译并重新发布我所附加的内容,这样两者就会匹配。这导致模块列表显示为我正在调试的程序集加载的符号,并继续调试问题。

于 2012-08-14T20:11:58.740 回答
0

更改项目目录,就像您在 Windows 系统目录中运行/调试代码一样,它不会以管理员权限执行,

在我的情况下,我将我的项目保存在 C: 驱动器中,当我执行代码时,我抛出访问冲突以读取输入数据错误,然后我从不同的位置尝试它,它工作正常

& 你也必须加载模块

于 2016-02-12T11:42:29.527 回答