第一次例外 - 未加载System.pdb

时间:2017-09-13 16:26:40

标签: c# visual-studio-2017 visual-studio-debugging

我使用VS2017,当我点击F5时,我得到以下内容

enter image description here

仅在某些项目中发生,即使我在VS选项下禁用了Symbols支持。虽然在过去,对于相同的项目,即使启用了Symbol支持也不会抛出。

所以,既然我认为这必须是某种特定的缓存VS设置项目,我删除了bin,obj,.vs,但是SymbolSource文件夹却一样。

如果我启用Just My Code它不会抛出,但这不是我想要的,因为我无法调试已经有符号的程序集。

据我所知,即使启用了Symbols Support,如果VS Options中没有声明相关的Symbol Server,也不应抛出。

此行为不仅仅特定于System.dll,但即使我附加到我没有符号的外部进程也会发生这种情况,这意味着再次使用“仅加载指定模块VS”选项进行过滤并不是我想要的。

那么,是否有人知道如何避免这种恼人的异常,同时允许对我配置的其他程序集使用Symbol Support。

2 个答案:

答案 0 :(得分:1)

这意味着您想要介入 .net Framework源代码:

http://referencesource.microsoft.com/setup.html

http://referencesource.microsoft.com/indexedpdbs.txt

实际上,我们之前也向VS 2017的产品团队报告了此问题:

Stepping into .NET Source Still Doesn't Work

如果你真的想避免它,我建议你禁用TOOLS-> Options-> Debugging下的“启用.NET框架源步进”等设置。

要调试.NET框架源代码,我们需要:

  

仅禁用我的代码

     

禁用步骤属性和运算符

     

禁用要求源文件与原始版本完全匹配

     

启用.NET框架源步骤

     

启用源服务器支持

因此,只需使用上述选项中的相反设置,再次进行调试。

此外,请启用TOOLS-> Options-> Debugging-> Symbols Server下的符号服务器,并启用异常设置窗口,查看详细的异常消息,可能您必须首先解决异常或获取来自它的任何有用信息。

答案 1 :(得分:1)

尝试取消选中调试托管服务。

This worked for me!