无法将“System.__ComObject"类型的 COM 对象转换为接口类型“Microsoft.VisualStudio.OLE.Interop.IServiceProvider"

问题描述:

在 Windows 7 上安装 Visual Studio 2008 和 SQL Server 2008 后,使用 SQL Management Studio 连接到服务器时出现以下错误:

After installing Visual Studio 2008 and SQL Server 2008 on Windows 7, I get the following error when connecting to a server with SQL Management Studio:

无法将类型为System.__ComObject"的 COM 对象转换为接口输入Microsoft.VisualStudio.OLE.Interop.IServiceProvider".这个操作失败,因为 COM 组件上的 QueryInterface 调用对于 IID '{6D5140C1-7436-11CE-8034-00AA006009FA}' 的接口由于以下错误而失败:不支持此类接口(来自 HRESULT 的异常:0x80004002 (E_NOINTERFACE)).(Microsoft.VisualStudio.OLE.Interop)

Unable to cast COM object of type 'System.__ComObject' to interface type 'Microsoft.VisualStudio.OLE.Interop.IServiceProvider'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{6D5140C1-7436-11CE-8034-00AA006009FA}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)). (Microsoft.VisualStudio.OLE.Interop)

我看过一些博客文章建议重新注册 actprxy.dll,但这没有效果.有人知道如何解决这个问题吗?

I've seen blog postings recommending reregistering actprxy.dll, but this has no effect. Anyone know how to resolve this issue?

actprxy.dll 对我也不起作用.我找到了一个有效的解决方案 这里

actprxy.dll also didn't work for me. I found a solution that worked here

regsvr32 "C:\Program Files\Internet Explorer\ieproxy.dll"

regsvr32 "C:\Program Files\Internet Explorer\ieproxy.dll"

如果您运行的是 64 位 Windows,请尝试以下操作:

if you are running 64 bit windows, try this:

regsvr32 "C:\Program Files (x86)\Internet Explorer\ieproxy.dll"

regsvr32 "C:\Program Files (x86)\Internet Explorer\ieproxy.dll"