Visual studio 引用的组件';系统&x27;找不到。(或该事项的任何其他组成部分)
问题:今天刚开始,对解决方案之外的任何程序集的所有引用都无法解析,无法找到引用的组件“SomeComponent”。尝试生成时。第三方组件(全部15个左右)以及所有.NET Framework程序集都会发生这种情况——基本上是指不是同一解决方案中的另一个项目的任何组件 尝试加载其他一些解决方案也会产生同样的问题。但是,创建一个新的WinForms项目没有问题。(从头开始,它在重新安装VS之前就起作用了,现在也不起作用了。我创建了一个新的WinForms应用程序和一个WPF应用程序,设计师也无法加载程序集。我尝试以3.5和2.0为目标,但没有成功。) 我尝试过的事情:Visual studio 引用的组件';系统&x27;找不到。(或该事项的任何其他组成部分),visual-studio,visual-studio-2008,Visual Studio,Visual Studio 2008,问题:今天刚开始,对解决方案之外的任何程序集的所有引用都无法解析,无法找到引用的组件“SomeComponent”。尝试生成时。第三方组件(全部15个左右)以及所有.NET Framework程序集都会发生这种情况——基本上是指不是同一解决方案中的另一个项目的任何组件 尝试加载其他一些解决方案也会产生同样的问题。但是,创建一个新的WinForms项目没有问题。(从头开始,它在重新安装VS之前就起作用了,现在也不起作用了。我创建了一个新的WinForms应用程序和一个WPF应用程序,设计师也无法加
- 修复Visual Studio安装
- 重新启动计算机
- 使用/resetsettings标志启动VS
- 系统还原到2天前,当时已知系统正在工作
- 卸载VS并重新安装
- 从SVN重新结账
我只是备份了数据并重新格式化,所以我无法再验证任何我还没有尝试过的想法,因此,我将把悬赏留给投票结果最差的答案,并作为以后可能遇到此问题的任何其他人的参考。建议的下一个调试步骤:查看项目设计器:参考->参考路径以验证系统和第三方组件的路径是否正确显示。(当心那些像驱动器号一样从我的眼球上滑过的旧标记。)我不想这么说,但听起来这个系统好像有点问题。在一定程度上,重新安装操作系统要比继续尝试修复当前安装更快
我只是希望你能以正确的精神来对待这件事。。。抱歉。尝试在使用fuslogvw对程序集加载日志进行图灵处理后运行VS。当运行时试图定位和加载程序集时,您将能够看到它捕获的其他错误 在Vista中,您必须以管理员身份运行fuslogvw,有时还需要指定一个显式路径来保存日志
您也可以尝试通过从另一个实例附加到Visual Studio,或使用.NET SDK附带的基本调试器来调试Visual Studio。这里是在黑暗中拍摄的,但我遇到了相同(类似)的问题。我遇到的问题与拥有一台64位机器和运行一个混合了64位和32位第三方dll的项目有关。解决方案是确保我有正确的位(32v64),然后以32位模式构建项目:项目属性>构建>平台目标:x86 另一次发生这种情况时,我不得不删除所有64位dll,并用32位dll重新安装
HTH的使用ILDASM检查您的输出,以确保引用正确显示——将它们与正常工作的程序集进行比较,看看是否有任何东西跳出您的视线。同一解决方案中的其他项目的引用也可能有问题。我只想构建一个项目,但得到了关于另一个项目中引用的消息。虽然另一个项目中的问题是正确的,但我认为信息是不正确的:
好的,如果你点击VS 2012 RC中的错误,然后调试它,错误就消失了…不久前我遇到过类似的问题 我发现这个问题是由git在从一个分支跳到另一个分支时没有正确创建.exe引起的(我们在一个路径中有nuget.exe,它在跳分支时被删除/添加)。当您尝试运行nuget时,windows会对exe进行测试 在多次重置分支后,我最终使exe正常运行。然后我注意到repo中所有目录的安全性都被重置了,所以我不得不处理这个问题 在这一切之后,VisualStudio开始表现得很好
希望这能帮助别人 在我的情况下,解决方案完全不同。这看起来像是NuGet路径的问题(由我将项目移到另一个解决方案,然后再移回来引起) 我编辑了.csproj并删除了对NuGet和相关包的所有引用。我还从解决方案文件夹中删除了包文件夹
然后系统组件神奇地重新出现。我也遇到了同样的问题。结果表明NuGet出现了问题。我删除了
*.csproj
-文件(在文本编辑器中打开)的以下部分。这为我解决了问题:
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
</Target>
此项目引用了此计算机上缺少的NuGet程序包。请启用NuGet程序包还原以下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105. 缺少的文件是{0}。
我知道这是一个老问题,但它仍在最新版本的Visual Studio(2015)中出现。我以一种不同的方式修复了它,而这在问题提出时可能是不可用的。基本上,这与VS找不到.Net库包有关。要在最新版本的Visual Stu中修复它
project
/.nuget
/submodule
/.nuget
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. xxx.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\...\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\...\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
<Error Condition="!Exists('..\packages\NOT-Exist.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NOT-Exist.targets'))" />
</Target>