当前位置: 移动技术网 > IT编程>开发语言>.net > 接口的 COM 组件调用 QueryInterface 因以下错误而失败: 库没有注册。

接口的 COM 组件调用 QueryInterface 因以下错误而失败: 库没有注册。

2019年09月29日  | 移动技术网IT编程  | 我要评论

化工原材料,游戏部落,卢飞小说网

这个问题原因是因为安装了高版本的office然后卸载掉,又安装了低版本的office导致的。

博主是 office2016卸载后,安装了office2013.

excel报错信息为:

无法将类型为“microsoft.office.interop.excel.applicationclass”的 com 对象强制转换为接口类型“microsoft.office.interop.excel._application”。
此操作失败的原因是对 iid 为“{000208d5-0000-0000-c000-000000000046}”的接口的 com 组件调用 queryinterface 因以下错误而失败: 库没有注册。 (异常来自 hresult:0x8002801d (type_e_libnotregistered))。

word的报错信息为:

无法将类型为“microsoft.office.interop.word.applicationclass”的 com 对象强制转换为接口类型“microsoft.office.interop.word._application”。
此操作失败的原因是对 iid 为“{00020970-0000-0000-c000-000000000046}”的接口的 com 组件调用 queryinterface 因以下错误而失败: 库没有注册。 (异常来自 hresult:0x8002801d (type_e_libnotregistered))。

解决问题需要对注册表做如下操作:

excel---修改hkey_classes_root\typelib\{00020813-0000-0000-c000-000000000046}下把1.9的文件夹删掉

word---修改hkey_classes_root\typelib\{00020905-0000-0000-c000-000000000046}下把8.7的文件夹删掉。

注:删除的1.9和8.7文件夹均为空的文件夹,和1.8、8.6的文件夹很容易区分!

改后的效果如下:

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网