您的位置:首页 > 编程语言 > ASP

ASP.NET 导出Excel 80070005错误

2013-03-19 11:07 274 查看
 在web程序中对Excel进行操作出现了

   错误,提示权限不足

  在网上找到了设置权限的方法如下

  -------

  ASP.NET 导出Excel 错误解决备忘

  网站项目要用到导出为excel文件的功能.记得以前自己学习过这个用法,不过今天怎么也找不到以前自己的那段代码了.上网找了一下,在"孟子E章"的网站上找到一段最基本的操纵c#操作excel的代码,在自己的程序中试了一下,程序运行时报错:"检索 COM 类工厂中 CLSID
为{000-0000-0000-C0046} 的组件时失败,原因是出现以下错误: 。"上网又查了半天,终于找到了解决方案,原来是权限设置的问题,解决方法如下:

  1:在服务器上安装office的Excel软件.

  2:在"开始"->"运行"中输入dcomcnfg.exe启动"组件服务"

  3:依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置"

  4:在"DCOM配置"中找到"Microsoft Excel 应用程序",在它上面点击左键,然后点击"属性",弹出"Microsoft Excel 应

  用程序属性"对话框

  5:点击"标识"标签,选择"交互式用户"

  6:点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击洞喀的"编辑"按钮,在弹出的"安全性"对话框中填加

  一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它付与"本地启动"和"本地激活"权限.

  7:依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填甲蠡个"NETWORK

  SERVICE"用户,然后付与"本地访问"权限.

  这样,我们便配置好了响应的Excel的DCOM权限.

  注意:这是在WIN2003上配置的,在2000上,可能是配置ASPNET用户

  由于EXCEL是在服务器上翻开的,seo外链工具所掖喀该写一个把导出数据保存在服务器上,然后再传递给客户端的方法,最后每次调

  用这个功能的时候再删除以前在服务器上所天生的所有Excel

  ------

  但按照方法在系统的DCOM设置里却没有发现 Microsoft Excel 应用程序 ??

  ------

  之后找到了原因,如下,是由于我使用的是64位系统导致:

  主要是64位系统的问题,excel是32位的组件,所以在正常的系统组件服务里是看不到的

  可以通过在运行里面输入 comexp.msc -32 来打开32位的组件服务,在里就能看到excel组件了

原文地址
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: