检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005
今天遇到了同样的问题,我们出现的问题是不定时出现日志出现报错信息:
Error:检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 8000401a。 StackTrace: 在 EBidding.DocumentGenerator.GD.WordGenerator.Open(String filePath) 位置 D:\alsmill_KM\VSProject\Ebidding_WebService\DocumentGenerator\GD\WordGenerator.cs:行号 40 6:05:25 未将对象引用设置到对象的实例。 6:05:25 Source:EBidding.DocumentGenerator
在网上这个blog的解决方案,转载记录: 用C#动态生成Word文档功能实现了,在本地的机器运行时是好的,但程序发布安装到远程服务器上就报错了,
报错信息为:检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005
这使我很纠结,看了很多的信息后,现在才算是搞定了。 为了不忘记特意再此做下记录来! 方法一(推荐):
检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 8000401a
1.运行dcomcnfg.exe打开组件服务,
2.依次展开"组件服务"->"计算机"->"我的电脑"->"DCOM配置"->"Microsoft Word 文档"
3.右键打开“属性”对话框,点击“标识”选项卡,选择"下列用户",把管理员的用户及密码正确填写进去...
4.点击"安全"选项卡,依次把"启动和激活权限","访问权限","配置权限",都选择为自定义,然后依次点击它们的编辑,把everyone添加进去,并加入所有的权限
5.请设置web.config中的<identity impersonate="true" userName="Administrator" password="abc123"/>帐号和密码,否则会提示检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。
例如
<system.web>
<identity impersonate="true" userName="Administrator" password="abc123"/>
</system.web>
方法二: 1.控制面板-》管理工具-》组件服务-》计算机-》我的电脑-》DCom配置-》找到Microsoft Word文档
之后
2.右键“属性”打开此应用程序的属性对话框。
3.单击"安全"选项卡,分别在"启动和激活权限"和"访问权限"组中选中"自定义",然后 自定义->编辑->添加ASP.NET账户和IUSER_计算机名或Network Service用户
* 这些帐户仅在计算机上安装有 IIS 的情况下才存在。
确保允许每个用户访问,然后单击确定。
4.单击确定关闭 DCOMCNFG
组件服务中找不到office word
在.NET环境下,使用word组件进行word操作,实现word的读取、导出等操作时,很麻烦,而且在不同环境下面使用,会有意想不到的兼容性问题,更别提发布部署了。。简直要命。
so~~不到万不得已,不要去玩。
VS2010 C#4.0对COM的交互性操作有了新的改进。。。
Automatic object -> dynamic mapping
Optional and named parameters
Indexed properties
Optional “ref” modifier
Interop type embedding (“No PIA”)
------------------------------
这边主要记录一下,在使用word组件时的权限配置。一般在32位机上,安装完word之后,可以在“组件服务”中找到word,并进行配置。不过,部署在64位机,可能就找不到了。
此时:
1、开始->运行->mmc -32
2、文件-添加/删除管理单元
3、从“可用的管理单元”中找到“组件服务”,添加到“所管理单元”,点击“确定”即可
4、添加完之后,即可在此看到word文档。。接下来配置,你懂的~
————————————————
原文链接1:组件服务中找不到office word_组件服务 无office-CSDN博客
链接2:
检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005 -腾讯云开发者社区-腾讯云