• 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败


    .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 应用程序属性"对话框 
    5:点击"标识"标签,选择"交互式用户" 
    6:点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK  SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限. 
    7:依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK  SERVICE"用户,然后赋予"本地访问"权限. 
    8.如果交互式用户设置后出现错误8000401a,可取消交互式用户,指定为administratr,可暂时解决此问题。进一步的解决方式还有待探讨。 
    9.采用第8点的设置后,打开Excel可能会出现“无法使用对象引用或链接”,并且不能进行单元格粘贴。原因不明,取消设置后即可消失。 

    另外说明:光按以上设置并不能完全保证不出问题,因为调用OFFICE的操作可能涉及其他的系统资源,很可能依然权限不够而导致问题,只是设置EXCEL应用程序后,还是可能会报80070005的错误,最保险的是应该在dcomcnfg中选中我的电脑然后右键属性->com安全,将里面的访问权限,启动和激活权限全都编辑默认,在当中加上network service(iis 5.0的话,要加的是asp.net用户),并如前面对networkservice设置上相同的权限,这样基本上能保证不会再出什么问题。

  • 相关阅读:
    我也要学C++_第三章:字符串
    我也要学C++_第二章:整数表达式
    VC++学习笔记01糖葫芦(数组)及其游戏编程实践
    一年后再更新博客了
    我也要学C语言(威力加强版)_第一章:WINDOWS平台下CL编译器下helloworld的编写,编译与链接
    我也要学python内置数据结构(一)
    批量转换的福音:一款很好用的文件编码批量转换工具。
    我的未来
    php解决json_encode输出GB2312中文问题 (数组)
    实现单页播放音乐的功能
  • 原文地址:https://www.cnblogs.com/beeone/p/4134911.html
Copyright © 2020-2023  润新知