从Excel 2013降级到2010(即删除2013并安装2010)后,当我尝试从外接程序访问Excel OM时,如下所示:
if (this.Application.ActiveWorkbook == null)
{
return;
}
我收到以下异常:
无法将类型为“ System .__ ComObject”的COM对象转换为接口类型为“ Microsoft.Office.Interop.Excel._Application”。该操作失败,因为在COM组件上对具有IID'{000208D5-0000-0000-C000-000000000046}'的接口的QueryInterface调用由于以下错误而失败:库未注册。(来自HRESULT的异常:0x8002801D(TYPE_E_LIBNOTapped))。
我已采取以下步骤解决了该问题,但没有一个起作用:
但是,似乎没有任何效果。是否有我所缺少的东西,或者实际上我必须擦拭机器?
编辑:我的猜测是注册表中仍然存在冲突,但我不知道在哪里...
感谢在广告中!
找到了解决方案-我忘了删除对Excel 2013的引用:
HKEY_CLASSES_ROOT \ TypeLib {00020813-0000-0000-C000-000000000046} \ 1.8
删除1.8
我的更正注册表后,如下所示:
...
图片来源:http : //www.c-sharpcorner.com/Forums/Thread/203666/unable-to-cast-com-object-of-type-microsoft-office-inte.aspx
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句