猿问

如何补救“断点目前不会被击中”。此文档未加载任何符号。“警告?

如何补救“断点目前不会被击中”。此文档未加载任何符号。“警告?

快速版上的C#桌面应用程序。工作了5秒后就不起作用了。

我试过以下几种方法。

  • 确保在所有程序集上设置调试配置、调试标志和完整调试信息。
  • 从整个计算机中删除所有bin和obj文件夹以及与项目相关的所有DLL。
  • 从零开始重新创建导致问题的项目。
  • 重新启动。

解决方案中有两个WinForms项目。其中一个加载调试信息,另一个不加载。它们都是指我试图在项目文件中以完全相同的方式获取调试信息的程序集。有什么想法吗?


我想在这里添加,主要是为了我自己,当我回来回顾这个问题时,符号在程序集加载之前不会加载,而程序集直到需要时才会加载。如果断点位于仅在主程序集中的一个函数中使用的库中,则在调用该函数之前,符号将不会被加载(并且它将显示断点未被击中)。


潇潇雨雨
浏览 708回答 3
3回答

jeck猫

一旦到达断点或使用Debug > Break All,使用Debug > Windows > Modules..您将看到加载到进程中的所有程序集的列表。找到想要获得调试信息的那个。右击它并选择符号加载信息。您将得到一个对话框,其中列出了它为程序集查找.pdb文件的所有目录。对照实际的.pdb位置验证该列表。确保它找不到旧的。在正常项目中,程序集及其.pdb文件应该始终由IDE复制到与.exe相同的文件夹中。项目的bin\Debug文件夹。如果你一直在玩GAC,一定要把它从GAC中移除。

繁星淼淼

首先,用鼠标右键尝试重建你的项目,点击项目>重建,如果不起作用,试着清理项目(鼠标右键点击项目>清洁)如果不起作用,请检查这个:鼠标右键单击工程项目选择[财产]选择[建造]附签确保[定义调试常量]和[定义跟踪常数]检查确保[优化守则]未被检查单击[先进]按钮位于构建选项卡页的底部。确保[调试信息:]设置为[全部]点击[好]重建项目;-)(步骤6生成.pdb文件,这些是调试符号)

炎炎设计

只是一些简单的尝试-你可能已经试过了。右键单击解决方案资源管理器中的解决方案,单击“清洁解决方案”,这将删除与解决方案关联的所有已编译和临时文件。.重新构建解决方案,然后再次调试。在一个解决方案中,我还遇到了多个断点项目的问题-有些被编译为x86,有些被编译为x64。
随时随地看视频慕课网APP
我要回答