我知道这不是一个编程问题,但它是一个编程工具问题。
在Visual Studio 2008 Team Edition(带有.NET 3.5 SP1的9.0版)中,当我将引用从一个csproj复制并粘贴到另一个csproj时(使用“解决方案资源管理器”视图中的上下文菜单),我收到以下错误:
错误HRESULT E_FAIL已从调用COM组件返回
这刚刚开始在我的机器上发生。我只能找到关于它的this文章,它不包含任何解决方案。
有什么想法吗?
答案 0 :(得分:9)
这是Google在VS 2010 paste reference E_FAIL
之类显示的排名第一,所以我想我会分享这个解决方法:
请勿通过解决方案资源管理器中的上下文菜单使用复制/粘贴引用。
相反:
<Reference>
XML
(多个)节点。 <ItemGroup>
节点包含<Reference Include="mscorlib" />
之类的内容,并将您的引用粘贴在其上方。您的参考现已复制到目标项目中。
显然,至少使用环境变量的引用存在问题,如here所述(尽管在我的情况下,我遇到了不使用环境变量的引用的问题,并且Visual Studio 2010 ...)
答案 1 :(得分:5)
Yikes,E_FAIL是最通用的COM错误,因为它字面意思是返回的COM函数失败。我猜想,不知何故,visual studio 2008在某个地方有一个损坏的COM对象。
您是否尝试重新安装visual studio 2008只是为了让它重新注册所有的tlb和对象?