从2013年降级到2010年后,Excel API的例外情况

从Excel 2013降级到2010(即删除2013和安装2010)后,尝试从我的加载项访问Excel OM时,如下所示:

if (this.Application.ActiveWorkbook == null) { return; } 

我得到以下exception:

无法将“System .__ ComObject”types的COM对象转换为接口types“Microsoft.Office.Interop.Excel._Application”。 此操作失败,因为IID为“{000208D5-0000-0000-C000-000000000046}”的接口的COM组件上的QueryInterface调用由于以下错误而失败:库未注册。 (来自HRESULT的exception:0x8002801D(TYPE_E_LIBNOTREGISTERED))。

我已经采取了以下步骤来解决这个问题,但没有任何工作:

  • 修复了办公室安装
  • 卸载并重新安装
  • 清除registry中的所有办公室15参考
  • 重新注册的Excel(“C:\ Program Files(x86)\ Microsoft Office \ Office14 \ excel.exe”/ o)

但是,似乎没有任何工作。 有什么我失踪或我真的要擦拭机器?

编辑:我的猜测是,在registry中仍然有冲突,但我不知道在哪里…

谢谢!

find解决scheme – 我忘了删除Excel 2013的一个引用:

HKEY_CLASSES_ROOT \ {types库00020813-0000-0000-C000-000000000046} \ 1.8

删除1.8我更正的registry看起来像这样:

在这里输入图像说明

在这里输入图像说明

信用度: http : //www.c-sharpcorner.com/Forums/Thread/203666/unable-to-cast-com-object-of-type-microsoft-office-inte.aspx