一个C#桌面应用程序(在Visual Studio Express版上)工作了,但5秒钟后就不工作了。

我尝试了以下方法:

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

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


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


当前回答

对于发生此错误的某些情况,另一种解决方案是:检查您的Build Action。

我在一个asp.net MVC3项目中遇到了这个问题;我的一个控制器由于某种未知原因将其Build Action设置为EntityDeploy,尽管它应该是Compile。

其他回答

我使用VS10将一个C#应用程序与一个静态库集成,这是我的新手。我编写了一个托管代码dll来连接它们。除了静态库,我可以在任何地方设置断点。我收到了上面描述的消息-没有为该文档加载符号。我尝试了上面的许多建议。我可以看到符号没有被加载。我终于注意到一个复选框“配置调试”,“启用非托管代码调试”。这允许我在静态库函数中设置断点。

就我而言,这些解决方案都没有奏效。我不得不去

工具->导入和导出设置->重置所有设置。

然后调试开始工作,没有任何问题。

在我的案例中,我正在使用Visual Studio的Experimental Instance调试WPF扩展。在开始调试并暂停调试后,我打开了“调试”>“窗口”>“模块”窗口。在那里,我可以看到Visual Studio试图加载符号C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\15.0_76a9e536Exp\Extensions\<companyName>的目录。停止调试后,我使用Windows资源管理器删除了目标文件夹并重新启动了调试器。Visual Studio随后能够命中断点。

我测试这个问题的所有答案对我来说不起作用,我使用以下方法:

我从项目中排除文件具有断点工作室打不到他们,然后我把他们纳入我的项目工作断点。

通过在下拉菜单中选择调试,确保您处于调试状态,而不是发布状态,如下图所示。

然后,尝试通过在解决方案资源管理器窗口中的解决方案上单击鼠标右键并选择“清理解决方案”来清理项目。

然后通过在解决方案资源管理器窗口中的解决方案上单击鼠标右键并选择“重建解决方案”来重建解决方案