【问题标题】:Debug a compiler initialization error in VS2010?调试VS2010编译器初始化错误?
【发布时间】:2013-01-22 22:24:51
【问题描述】:

今天早上,回到工作岗位,并尝试在我们内部的网络服务上“构建网站”,我遇到了这个问题:

------ Build started: Project: C:\...\SyncWcfService\, Configuration: Debug Any CPU ------
Validating Web Site

vbc : Fatal (0,0): error BC2000: compiler initialization failed unexpectedly: Unable to find required file 'Microsoft.VisualBasic.dll'.
Validation Complete

这是我第一次加载项目,但另一位同事也有同样的问题,他在上个月成功运行。

存在很多文件副本(也有很多不同的版本),并且存在于 GAC 中: 全局程序集缓存包含以下程序集:

Microsoft.VisualBasic,版本=8.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a,处理器架构=MSIL

清理和重建不起作用。也没有删除所有临时文件,谷歌也没有显着帮助(它建议重新安装 .net 框架,但问题至少出现在两台机器上,这让我觉得不太可能是框架问题)。详细的诊断构建只会产生上面的输出。

我很茫然。有人有什么想法吗?

更新: Procmon 报告:

09:00:41.5420355
devenv.exe
5588
CreateFile
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\vbc : Fatal
NAME NOT FOUND
Desired Access: Read Attributes, Disposition: Open, Options: Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a

这有点帮助(感谢 Jeremy),但这似乎表明它正在尝试创建一个名为“vbc : Fatal”的文件。我从来没有发现与 Microsoft.VisualBasic.dll 有任何关系

更新:这似乎是由清除 web.config 中的程序集引起的。

如果我从编译 -> 程序集中删除 <clear /> 行,错误就会消失。

【问题讨论】:

  • 它告诉你运行 ProcMon 并调查错误 无法找到所需的文件 'Microsoft.VisualBasic.dll'

标签: vb.net visual-studio-2010 web-services


【解决方案1】:

查看 web.config 的编译部分。有什么异常吗?

尝试将整个编译部分替换为:

<compilation debug="false" strict="false" explicit="true" targetFramework="4.0" />

项目是否通过验证?

是这样,将有问题的行一一添加回来,直到错误再次出现。

【讨论】:

    猜你喜欢
    • 2014-03-01
    • 2018-05-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    相关资源
    最近更新 更多