解决Office互操作错误"检索COML类工厂中 CLSID为 {xxx}的组件时失败,原因是出现以下错误: 80070005"
2016-12-26 16:25
633 查看
Excel为例(其他如Word也适用)文件数据导入时报出以下错误:
检索COML类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005,如图所示:
可以看到报出的异常类型为:UnauthorizedAccessException,没有权限访问,表明我们需要配置执行操作账户的COM访问权限.
由于系统是Windows Server 2008 64位版的,服务器上安装的Excel版本为Excel 2007 是32位应用程序,所以在系统的组件服务中是找不到Excel的,
此时,需要在32位DCOM配置中设置权限,具体步骤如下:
1.运行命令"comexp.msc -32",打开组件服务32位管理控制台,如图:
2.在DCOM配置中找到"Microsoft Excel Applcation",如图:
Word:
3.右键->属性,在标识选项卡中选择"交互式用户",如图:
4.在"安全"选项卡中的"启动和激活权限"分组中,选择"自定义",然后点击"编辑",添加执行操作的账户并授予"本地启动"和"本地激活"权限(如Network Service,IUSR),如图所示
5..在"安全"选项卡中的"访问权限"分组中,选择"自定义",然后点击"编辑",添加执行操作的账户并授予"本地访问"权限(如Network Service,IUSR),如图所示
6.在"位置"选项卡中,如图所示
7.配置结束,IIS程序池选择允许32位程序,重新运行程序,不再报错.
检索COML类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005,如图所示:
可以看到报出的异常类型为:UnauthorizedAccessException,没有权限访问,表明我们需要配置执行操作账户的COM访问权限.
由于系统是Windows Server 2008 64位版的,服务器上安装的Excel版本为Excel 2007 是32位应用程序,所以在系统的组件服务中是找不到Excel的,
此时,需要在32位DCOM配置中设置权限,具体步骤如下:
1.运行命令"comexp.msc -32",打开组件服务32位管理控制台,如图:
2.在DCOM配置中找到"Microsoft Excel Applcation",如图:
Word:
3.右键->属性,在标识选项卡中选择"交互式用户",如图:
4.在"安全"选项卡中的"启动和激活权限"分组中,选择"自定义",然后点击"编辑",添加执行操作的账户并授予"本地启动"和"本地激活"权限(如Network Service,IUSR),如图所示
5..在"安全"选项卡中的"访问权限"分组中,选择"自定义",然后点击"编辑",添加执行操作的账户并授予"本地访问"权限(如Network Service,IUSR),如图所示
6.在"位置"选项卡中,如图所示
7.配置结束,IIS程序池选择允许32位程序,重新运行程序,不再报错.
相关文章推荐
- 解决Excel 互操作错误"检索COML类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005"
- "检索COM类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005" 问题的解决
- 解决RTX开发问题:检索 COM 类工厂中 CLSID 为 {79210E58-99EB-45D0-8890-763EFEAA143F} 的组件时失败,原因是出现以下错误: 80040154。
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- C#操作word或excel及水晶报表,检索 COM 类工厂中 CLSID 为 {} 的组件时失败,原因是出现以下错误: 80070005
- (用iis调用com来操纵Excel) 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- “检索COM类工厂中CLSID为{...}的组件失败,原因是出现以下错误:8007007e...”的解决办法
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- RTX Server SDK发提醒 解决:检索 COM 类工厂中 CLSID 为的组件时失败,原因是出现以下错误: 80070005
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- 检索COM类工厂中CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005/8000401A的错误解决方法
- 检索COM类工厂中CLSID为{*}的组件时失败,原因是出现以下错误!解决办法
- “检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005”的解决方法
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。8000401A的错误解决方法
- 检索 COM 类工厂中 CLSID 为 {XXXX-XXXX-XXX-XXXXX-XXX} 的组件时失败,原因是出现以下错误: 80040154
- {"检索 COM 类工厂中 CLSID 为 {10020100-E260-11CF-AE68-00AA004A34D5} 的组件时失败,原因是出现以下错误: 80040154。"} .
- C#操作word或excel及水晶报表,检索 COM 类工厂中 CLSID 为 {} 的组件时失败,原因是出现以下错误: 80070005
- 检索 COM 类工厂中 CLSID 为 ???的组件时失败,原因是出现以下错误: 80080005。