如何调试“意外的调试信息初始化错误 - '无法在运行时中找到所需的导出。'”

时间:2008-12-29 12:25:28

标签: .net visual-studio debugging

我在所有项目(包括全新的空模板)上收到此错误消息我正在尝试使用Visual Studio 2008构建:

  

意外的调试信息初始化错误        - '无法在运行时中找到所需的导出。'

Error Help for Compiler Error CS0040不是很有帮助:

  

使用时可能会发生此错误   / debug编译器选项并指示   编译器无法写入   到.pdb文件。可能的决议   此错误包括重新安装   Visual Studio,确保   编译器具有对文件的写访问权限   目录,或不编译   /调试。

我可以在预期的{bin,obj} \ Debug目录中手动创建文件,以管理员身份运行Studio没有帮助,卸载3.5框架和Visual Studio 2008并重新安装它们各自的Service Pack我仍然得到错误。

从命令行删除所有/debug开关显然会删除指示的错误消息,但不能进一步开发。

如何进一步调试?

2 个答案:

答案 0 :(得分:1)

最后,我使用Process Monitor中的Sysinternals Suite来查看编译器正在做的事情。通过从Visual Studio 2008命令提示符启动csc.exe并在进程监视器中按Process Name is "csc.exe"过滤,我可以很好地了解编译器正在做什么。

“Inspired”由“无法在运行时中找到所需的导出”消息我搜索了丢失的DLL并且实际发现csc.exe试图访问Windows\Microsoft.NET\Framework\v2.0.50727\diasymreader.dll但是失败了。从另一个安装获取该DLL修复了我的错误。

答案 1 :(得分:0)

这听起来好像你已经安装了不匹配的VS / .NET DLL版本,或者我见过的一些奇怪的“半3.0半3.5”坏状态发生了几次;你可以到处检查各种版本,但最简单的方法就是铺平机器:(