2

今天早上,在重新开始工作并尝试在我们内部的 Web 服务上“构建网站”时,我遇到了这个问题:

------ 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 />从编译-> 程序集中删除该行,错误就会消失。

4

1 回答 1

0

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

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

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

项目是否验证?

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

于 2013-01-22T14:24:51.770 回答