“mscorlib.pdb未加载”,但mscorlib.dll不会丢失

我在VS2012运行我的应用程序,我得到一个运行时错误; 在这里输入图像说明

当我在“原始位置”看我看到mscorlib.dll,但不是mscorlib.pdb。

为什么会发生这种情况,我该如何解决?

转到工具,选项,debugging,一般,启用只是我的代码

这将阻止debugging器尝试在内部.NET Framework程序集上启动。

转到工具,选项,debugging,符号和设置caching位置。 然后点击上面的加载,它会为您提取必要的符号,并将它们存储在您提供的caching位置。

微软的编译器工具在具有.pdb扩展名(程序数据库)的独立文件中创build符号。 这允许他们为发布二进制文件创build分离的符号。 使用符号服务器,您的IDE可以在debugging期间获取符合特定版本的DLL的符号文件。 您也可以将此系统configuration为您自己的产品二进制文件,这对于在terminal用户机器上进行事后debugging任何崩溃非常有用。

有关使用其公共符号的更多详细信息,请参阅Microsoft的文档 。

当我使用静态variables时,我遇到了这个问题,它的值是静态方法分配的。

所以,每当我运行应用程序,这行代码就抛出exception。 如果你在这个地方放置一个debugging点(就像我做的那样),你会注意到抛出的exception。

解决这个错误的最佳解决scheme是:

1:打开App.config文件。

2:将此useLegacyV2RuntimeActivationPolicy="true"代码粘贴到启动标记中。

3:保存。

现在错误会消失。 另外看 这个 图片。 我已经为你做了这个。

这发生在我身上,原因不同:我引用了旧版本的NLog(2.0),而需要引用版本4.0。

在一个VB控制台应用程序,在我的情况下,这是不是以上所述。

只是在我的subs之前的Dim声明中进行string计算。

有问题的代码:

Dim FylPrefix $ = Fyl.Substring(0,Fyl.LastIndexOf(“。”))

把这个计算移到子里面是需要修正的! GERONIMO!

如果你在visualstudio中有这种types的项目运行时错误答案:Cntr + Alt + E打开exception窗口取消选中所有chechboxes必须和应该由B写的工作sriram Mca Giet College rajahmundry,东部godavary,2014批