"Error HRESULT E_FAIL has been returned from a call to a COM component."
因此,我无法:
- 添加任何引用
- 通过DB_First Approach更新我的数据库
这个问题是在最近Windows的更新之后开始出现的。
"Error HRESULT E_FAIL has been returned from a call to a COM component."
因此,我无法:
这个问题是在最近Windows的更新之后开始出现的。
对我起作用的方法:
cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\PublicAssemblies
您的路径可能会有所不同,需要进行检查。
gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dll
应该会重新生成,现在您可以添加引用了!
Steps:
Open "Developer Command Prompt for VS 2017" as Admin
CD into "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\PublicAssemblies"
Run "gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dll" After that close and reopen "Developer Command Prompt for VS 2017" as Admin
cd "C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64"
Run -> gacutil.exe /i "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.Shell.Interop.11.0.dll"
Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.0 Copyright (c) Microsoft Corporation. All rights reserved. Assembly successfully added to the cache
Restarting your PC will solve the problem
当我尝试在VS2022中打开新克隆的解决方案(之前是在VS2019中开发的),出现了很多缺失引用的问题,其中大部分都失败于AutoMapper
,导致上述错误。我将有问题的项目从备份的解决方案中复制出来重新构建,然后所有问题都在VS2022中开始正常工作。
对于VS企业版,它有效(在开发者命令提示符中运行): C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v10.0A \ bin \ NETFX 4.7.1 Tools \ x64> gacutil.exe / i“C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Enterprise \ Common7 \ IDE \ PublicAssemblies \ Microsoft.VisualStudio.Shell.Interop.11.0.dll
对我有效的方法
以管理员权限打开 Visual Studio 2019 的开发人员命令提示符 在开发人员命令提示符中输入以下内容 cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\PublicAssemblies
路径可能会有所不同,请核实
在开发人员命令提示符中输入以下内容 gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dll
Microsoft(R) .NET 全局程序集缓存实用程序。版本4.0.30319.0 版权所有(c) Microsoft Corporation。保留所有权利。
程序集已成功添加到缓存 enter image description here 现在应该重新构建,并且您现在可以添加引用了!