【求助】 Microsoft.Office.Interop.Excel.Application 实例化报错怎么解决?

365Marathon 2013-04-01 12:19:04
 //建立Excel对象
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
excel.Application.Workbooks.Add(true);


在new时候出如下错,怎么办,昨天还没事的

...全文
9644 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
dx271212 2015-12-11
  • 打赏
  • 举报
回复
WPS和office一起安装竟然就好了,卸载WPS和修改注册表竟然不行,真是醉了
傻傻不解释 2015-10-27
  • 打赏
  • 举报
回复
12楼 终于解决困扰我两天的问题,虽然不知道,机器上谁给装的wps
dceacho 2015-06-17
  • 打赏
  • 举报
回复
本来天下太平一切正常, 直到前几天某个流氓软件给我偷偷装了WPS, 弄了一整天了还没好
Xuebao_Chuanqi 2015-06-15
  • 打赏
  • 举报
回复
楼主,这个问题解决了吗????
masukattsu 2015-03-31
  • 打赏
  • 举报
回复 1
这个问题,困扰了我1年多了,我今天又研究了一天,终于搞定了。 我的环境是windows 2003和office 2003,后来升级成office 2007了,后来同事又给安装了wps。 去年通过添加删除升序把wps给卸载了,结果没有卸载干净,注册表和dcom组件有残留,由于当时时间有限,我们只好换了一台服务器进行演示和上线运行。 由于各种原因,导致必须用之前的服务器来搭建测试系统给用户使用,所以今天我专门抽时间来继续研究。话不多说,言归正传。 在网上看了各种描述,试了各种方法,还是不行,包括修改注册表: “ HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00020970-0000-0000-C000-000000000046}\TypeLib default键值指向{00020905-0000-4B30-A977-D214852036FF},这是wps的组件。 貌似应改为{00020905-0000-0000-C000-000000000046},office的word组件。 同样,3.0也改为8.4” 试了这个方法也不行,我又在注册表搜索“00020970-0000-0000-C000-000000000046”,发现还有几个,我都改了,可是发现报一样的错,当时我的头弄得又晕又疼。 我试着修复office 2007结果发现还不行,在网上下载了360安全卫士和wps注册表清理工具也还是不行,试过了你能搜到和想到的任何方法,结果发现也还是不行也!!!! 最终,在我绝望的时候,想着试试再重装一次wps卸载试试吧,结果还真管用。我用的wps自带的卸载程序,卸载的时候我注意到有一个“保留配置信息方便下次是使用”我直接把这个勾给去掉了,卸载成功,然后立马调试程序,再也不报错了,我头一下子不疼了。 总结:直接重新安装wps,然后用自带的卸载程序卸载就OK,希望与我有同样经历的朋友,能够顺利解决问题。 不要问我是谁,请叫我红领巾
flystill 2014-05-03
  • 打赏
  • 举报
回复
我也碰到0x80029C4A错误,是word组件 00020970-0000-0000-C000-000000000046。但是我注册表里没有HKEY_CLASSES_ROOT\TypeLib\00020970-0000-0000-C000-000000000046\ ,所以不存在word有多个版本问题。 但是我的机器上有wps,怀疑有关但不了解wps的注册表结构。于是用最土的办法,直接重装office、wps,办法无效。 怀疑配置未修正,就先卸载office、wps,工具清理注册表,再重装,问题解决。 机器上TypeLib下无对应项,但是有下面项 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00020970-0000-0000-C000-000000000046}\TypeLib default键值指向{00020905-0000-4B30-A977-D214852036FF},这是wps的组件。 貌似应改为{00020905-0000-0000-C000-000000000046},office的word组件。 同样,3.0也改为8.3 如碰到Excel问题,应能类似处理。
WDD1112 2014-04-26
  • 打赏
  • 举报
回复
Microsoft.Office.Interop.Excel.dll 这个在哪里啊 我找不到!!
Potters 2014-01-24
  • 打赏
  • 举报
回复
你这个问题很有可能是安装了wps或者卸载了wps引起的,我也遇到过。
ayforver 2013-06-27
  • 打赏
  • 举报
回复
1、 在服务器上安装Office的Excel相关软件(推荐安装Office 2007);2、 Cmd中输入命令 comexp.msc -32 启动组件服务(启动组件服务 方法 运行 mmc、mmc -32(32) 、DCOMCNFG.exe(64)) 不行一个一个3、 依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置";4、 在"DCOM配置"中找到"Microsoft Excel Application",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel应用程序属性"对话框;5、 点击"标识"标签,选择 启动用户(默认选项) ;6、 点击"安全"标签,在以下 三个项目中都选中 “自定义” 添加 ”everyone” 并分配最大权限(全选)7、设置Web.config文件 在Web.config文件的<system.web>中加入<identity impersonate="true"/> (没有这一步 会报Excel进程无法打开相应的excel文件)。 还有你引用的时候有好几个Microsoft.Office.Interop.Excel,引用不对吧,把几个都试一下哈,我是菜鸟哦。。。。
51Crack 2013-04-01
  • 打赏
  • 举报
回复
引用 5 楼 victoryboss 的回复:
有excel2007的
你引用是2003的dll吧?!
365Marathon 2013-04-01
  • 打赏
  • 举报
回复
有excel2007的
365Marathon 2013-04-01
  • 打赏
  • 举报
回复
斑竹在吗,急求啊
365Marathon 2013-04-01
  • 打赏
  • 举报
回复
Microsoft.Office.Interop.Excel.dll 在啊,没有丢失,这是怎么回事啊,大神们
EnForGrass 2013-04-01
  • 打赏
  • 举报
回复
你是不是拿到别人电脑上运行的,可能没安装Excel 不是的话 那就是看看Microsoft.Office.Interop.Excel.dll是不是丢失了
365Marathon 2013-04-01
  • 打赏
  • 举报
回复
无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel.Application”。此操作失败的原因是对 IID 为“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。
njw1028 2013-04-01
  • 打赏
  • 举报
回复
貌似Office安装有问题,或者以前没有卸载干净。 仿照这个方案试试:http://www.cnblogs.com/yczz/archive/2012/07/23.html

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧