1.1 错误信息
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80080005 服务器运行失败(Exception from HRESULT: 0x80080005(CO_E_SERVER_EXEC_FAILURE))
1.2 原因分析
C#没有通过程序访问Excel的权限。
1.3 解决方案
点击键盘上的 WIN+ R 快捷键,在弹出的运行窗口中输入 comexp.msc -32,点击确定按钮,打开组件服务。
4.1 错误消息
无法将为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型 “Excel._Application”。此操作失败的原因是对 IID 为“{000208D5 -0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败:不支持此接口(异常来自HRESULT:0x80004002(E_NOINTERFACE))。
4.2 原因分析
系统曾经安装过高版本的Office或Wps后卸载,卸载存在残余。例如:卸载了office2013,安装了office2010
4.3 解决方案
4.3.1 解决方案一: 使用office的自动修复功能
打开 控制面板 —> 程序 —> 程序和功能
根据配置的路径查找,查找到对应的位置,删除掉其他的版本
64位Office配置中的路径是 {00020905-0000-0000-C000-000000000046}, 版本是 8.7,按照路径查找位置
计算机\HKEY_CLASSES_ROOT\TypeLib\{00020905-0000-0000-C000-000000000046}
该文件夹下的版本号,只保留对应的8.7,删除掉其他的版本即可。