我尝试在 Visual Studio 10 中调试程序,但遇到断点问题。我把*.dll文件对应的*.pdb文件放到同一个目录下。但是在检查模块时,我看到每个 DLL 文件都被签名为Cannot find or open the PDB file
.
我该如何解决这个问题?如何检查 *.pdb 文件的预期位置?
我尝试在 Visual Studio 10 中调试程序,但遇到断点问题。我把*.dll文件对应的*.pdb文件放到同一个目录下。但是在检查模块时,我看到每个 DLL 文件都被签名为Cannot find or open the PDB file
.
我该如何解决这个问题?如何检查 *.pdb 文件的预期位置?
模块(Ctrl-D、M)是整理正在发生的事情的好地方,因此您处于正确的区域。
右键单击您希望找到 pdb 的模块/dll,然后选择Symbol Load Information
它应该在与您的 dll 相同的目录中开始查找,如果找到 pdb 将加载它或告诉您 pdb 文件与 dll 不匹配。
转到调试 -> 选项和设置 -> 调试 -> 符号,检查符号位置下的 Microsoft 符号服务器。见附图。
我在VS2013中遇到了类似的问题......与PDB文件和IISEXPRESS有关。我尝试了几件事并最终通过这样做解决了它:
工具 > 选项 > 调试 > 符号,然后按“空符号缓存”按钮
重新运行我的应用程序后,Visual Studio 需要一段时间来重新加载所有符号,但它最终确实这样做了,问题得到了解决!
就我而言,我正在调试一个单击一次的 Windows 应用程序。在模块中Symbol Load Information
,它告诉我 pdb 与当前附加的图像不同步。我必须查看整个列表,而不仅仅是顶部或底部的项目,以获得该错误文本。
这告诉我重新编译并重新发布我所附加的内容,这样两者就会匹配。这导致模块列表显示为我正在调试的程序集加载的符号,并继续调试问题。
更改项目目录,就像您在 Windows 系统目录中运行/调试代码一样,它不会以管理员权限执行,
在我的情况下,我将我的项目保存在 C: 驱动器中,当我执行代码时,我抛出访问冲突以读取输入数据错误,然后我从不同的位置尝试它,它工作正常
& 你也必须加载模块