【发布时间】:2014-04-15 22:30:50
【问题描述】:
我的应用程序具有导出到 Microsoft Word 的功能,但自从我从 Microsoft Office 2010 升级到 Microsoft Office 2013 后,它就没有工作了。
代码如下:
Microsoft.Office.Interop.Word.Application appVersion = new Microsoft.Office.Interop.Word.Application();
appVersion.Visible = false;
这是错误信息:
无法将“Microsoft.Office.Interop.Word.ApplicationClass”类型的 COM 对象转换为接口类型“Microsoft.Office.Interop.Word._Application”。此操作失败,因为 IID 为“{00020970-0000-0000-C000-000000000046}”的接口的 COM 组件上的 QueryInterface 调用因以下错误而失败:不支持此类接口(来自 HRESULT 的异常:0x80004002 (E_NOINTERFACE)) .
有人告诉我要编辑注册表,但我的注册表中不存在 IID“{00020970-0000-0000-C000-000000000046}”。
【问题讨论】:
-
这就是异常消息的意思,COM 也找不到注册表项。尝试找出注册表损坏的原因后重新安装。并且 做 尝试在 STA 线程上运行代码,这种封送处理并不便宜。
标签: .net com ms-office office-interop