为什么.NET Framework v1.1.4322文件夹中缺少“Microsoft.VisualBasic.Compatibility.dll”?

时间:2009-01-16 17:23:15

标签: .net windows vb.net msbuild

我开始使用Vista机器进行开发。如果它很重要:我正在使用MSBee,这样我就可以在Visual Studio 2005 IDE中进行编码,同时仍然可以构建1.1框架。

在Vista机器上,当我尝试构建一个特定的vb项目时,我收到了这个错误:

  

错误BC30464:命名空间或类型   项目级别的“兼容性”   进口   'Microsoft.VisualBasic.Compatibility'   无法找到。

同样的项目在我的旧XP机器上运行良好。

我在Vista计算机上签了这个文件夹:

C:\windows\microsoft.net\Framework\v1.1.4322

......果然,“Microsoft.VisualBasic.Compatibility.dll”丢失了。 “Microsoft.VisualBasic.Compatibility.Data.dll”也是如此。将它们从我的XP机器复制到我的Vista机器允许我成功构建项目。

我对为什么发生这种情况感到有点困惑。为什么“Microsoft.VisualBasic.Compatibility.dll”丢失了?我对我选择的解决方案也不太满意 - 手动复制DLL。它确实有效,但肯定有更好的方法。

至于配置:

Vista中:

  • .Net Framework 1.1
  • .Net Framework 1.1 SP1
  • .Net Framework 1.1 SDK
  • .Net Framework 1.0
  • .Net Framework 2.0
  • .Net Framework 3.0

XP:

  • .Net Framework 1.1
  • .Net Framework 1.1 SP1
  • .Net Framework 1.1 SDK
  • .Net Framework 1.0
  • .Net Framework 2.0

有谁知道是什么造成的?

1 个答案:

答案 0 :(得分:2)

我知道这个年龄较大,但想要为将来的搜索发布答案。

由于它们仅用于升级VB6代码,因此Microsoft.VisualBasic.Compatibility DLL未安装正常的1.1框架分发版。它们与Visual Studio一起安装。由于您没有安装VS 2003,因此未安装DLL。

安装VS 2005安装了DLL,但是用于2x框架。

您也可以通过安装1.1 SDK来获取DLL。