德育量化管理系统

特色功能

ASP.NET技术

检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问

作者:admin 来源: 人气: 标签:

.NET导出Excel遇到的80070005错误的解决方法: 
检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005基本上.net导出excel文件,都需要如此配置一下,不配置有的时候没错,而配置后基本应该不会出错。 
具体配置方法如下:  
1:在服务器上安装office的Excel软件. 
2:在"开始"->"运行"中输入dcomcnfg.exe启动"组件服务"
3:依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置" 
4:在"DCOM配置"中找到"Microsoft  Excel 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框 

    (这里有的人打开之后找不到Microsoft Excel应用程序,是因为有的版本是64位,有的是32位,如果是32的OFFICE可以通过comexp.msc -32来打开组件服务)


5:点击"标识"标签,选择"交互式用户"  
6:点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK  SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限.  
7:依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK  SERVICE"用户,然后赋予"本地访问"权限. 

通过上述的方法之后,我遇到过依然报这个错误的情况,我的做法是按照上面的步骤,只不过再新增的用户是EVERY ONE ,这样,问题就解决了

关于COM类工厂80070005和8000401a错误分析及解决办法  

http://blog.163.com/wj_1251/blog/static/1502740252012910105027530/

DCOM设置使用“启动用户”后,身份验证级别选择“默认”,安全选项卡中“启动和激活”中选择自定义并加入administrator用户和network service用户并赋予最大权限, “访问权限”中选择“使用默认值”,即两个用户都不加, “配置权限”中选择自定义并加入administrator用户和network service用户并赋予最大权限, IIS的“目录安全性”中按默认设置,但web.config文件中设置使用administrator身份模拟,即<identity impersonate="true" userName="administrator" password="密码"/>

实验结果:能正常访问web应用,能访问excel文件,能正常创建excel实例