“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败
发布日期:2021-4-24 15:17:11 人气: 标签:
中文版——
无法将类型为“Microsoft.Office.Interop.Excel.ApplicationClass”的
COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel._Application”。此操作失败的原因是对 IID
为“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败:
库没有注册。 (异常来自 HRESULT:0x8002801D
(TYPE_E_LIBNOTREGISTERED))。
英文版——
Unable to
cast COM object of type 'Microsoft.Office.Interop.Excel.ApplicationClass' to
interface type 'Microsoft.Office.Interop.Excel._Application'. This operation
failed because the QueryInterface call on the COM component for the interface
with IID '{000208D5-0000-0000-C000-000000000046}' failed due to the following
error: could not be found. (Exception from HRESULT: 0x80030002
(STG_E_FILENOTFOUND)).
错误原因:
Office的版本和SharePoint的版本不一致。
解决方案:
步骤一:
对于Excel,删除注册表项:
HKEY_CLASSES_ROOT\TypeLib\{00020813-0000-0000-C000-000000000046}\1.7
1.7对应的版本应该是office2010以上,如果你用的office版本低于2010,在程序中调用Excel时就可能会出现该类异常,正常情况下删除该项即可。
Word对应的注册表项为:
HKEY_CLASSES_ROOT\TypeLib\{00020905-0000-0000-C000-000000000046}\1.7
如果进行完第一步该错误仍出现,则需要进行步骤二
步骤二:
删除注册表项(Excel)HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{00020812-0000-0000-C000-000000000046}\InprocServer32\14.0.0.0
Word对应为:
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{ {00020906-0000-0000-C000-000000000046}}\InprocServer32\14.0.0.0
如果进行完上述两部出现异常,删除完之后重新安装office。