Visual Studio 没有为此文档加载任何符号

新手上路,请多包涵

我在调试 Visual Studio 2008 C++ 项目时遇到了一些麻烦。当我开始在调试中运行它时,断点被禁用并显示消息

断点不会被命中。没有为此文档加载任何符号。

我尝试过清洁和重建,但这并没有什么不同。

我还尝试查看 Debug->Windows->Modules。如果我右键单击要调试的模块并按符号加载信息,它会显示一个它试图从中加载符号的位置列表。列表中的第一个是正确的并且文件存在,但它旁边是这个错误

C:\path\to\my\symbol\Debug\MyProject.pdb:错误的未知符号处理程序

有谁知道这是什么原因或如何解决它?

原文由 Jim Jeffries 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

首先,您的某些模块可能不会显示在模块窗口中,因为其中一些可能是动态加载的(仅在需要时)。

您可能希望在 Linker > Debugging > Generate Program Database File 和 Generate Debug Info 下检查您的项目属性。确保这两个设置正确。

另外,检查 C/C++ > General > Debug Information Format 是否设置为 Program Database for Edit And Continue (/ZI) 或类似的东西。

我知道您提到您的符号文件存在,但检查我刚才提到的内容将确保您在正确的位置拥有正确版本的符号。

最后,检查解决方案中的所有项目和文件是否设置为编译为 Debug 而不是 Release 或其他,因为不会为此项目/文件生成任何符号(因此不会加载)。

希望这个对你有帮助。

原文由 TurnsCoffeeIntoScripts 发布,翻译遵循 CC BY-SA 4.0 许可协议

就我而言,错误是由于部分代码作为外部库连接的事实。为了使调试过程在进入外部库的代码时也能正常工作,不仅需要添加其头文件,还需要添加实现文件 - 解决方案资源管理器的文件夹 Source Files。

原文由 ant0nk 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题