发布部到IIS EXCEL报错 component with CLSID {00024500-0000-0000-C000-000000000046}

70 篇文章 0 订阅

环境及异常信息说明

环境说明: Win2008 R2(中文版) x64 、IIS 7.0

功能说明:上传Excel到服务器,并在服务器端读取Excel中的数据

异常信息:Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005 拒绝访问。 (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).

 

处理过程

1.服务器端安装Office  Excel软件;

2. 【开始】--【运行】--输入“Dcomcnfg”--【确定】,打开【组件服务】窗口

3.【组件服务】--【计算机】--【我的电脑】--【DCOM配置】--【Microsoft Excel Application】(x64为系统需要按照下面的方法配置,才能找到)

         若找不到【Microsoft Excel Application】,请参照以下方法:

           ①【开始】--【运行】--输入“mmc -32”--【确定】,打开【控制台】窗口;

           ② 选择【文件】—【添加/删除管理单元】--在“可用的管理单元”中选择【组件服务】--单击【添加】--【确定】;

4.   右键--【属性】,在【标识】选项卡中选择“下列用户”,填入用户的用户名和密码(Administrator即可),如图:

标识

5. 【安全】选项卡中,“启动和激活权限”、“访问权限”都选择【自定义】,如图:

安全

”启动和激活权限“中,点击【编辑】--【添加】—“IIS_IUSRS”用户,并在权限中选择【本地启动】、【本地激活】,如图:

权限

”访问权限”中,点击【编辑】--【添加】—“IIS_IUSRS”用户,并在权限中选择【本地访问】,如图:

访问权限

点击【确定】,即可。


第二种:(可以实现)

在web.config中<system.web>中加入如下配置

web.config 添加如下信息:
<system.web>
.....
    <identity impersonate="true" userName="管理员账号" password="密码"/>






当我们在检索 `com` 类工厂中 `clsid` 为 `{00024500-0000-0000-c000-000000000046}` 的组件时,出现了一些问题导致失败。 该 `clsid` 是一个用于标识组件的唯一标识符,`00024500-0000-0000-c000-000000000046` 是代表这个具体的组件的 `clsid`。 失败可能是由以下几个原因引起的: 1. 组件不存在:可能我们所指定的 `clsid` 为 `{00024500-0000-0000-c000-000000000046}` 的组件并不存在于 `com` 类工厂中。这可能是因为组件没有正确安装、注册或者已被删除。 2. 权限问题:检索组件需要适当的权限。如果我们无权访问或者执行该操作的权限不足,那么检索操作就会失败。保证我们有足够的权限来检索 `com` 类工厂中指定 `clsid` 的组件。 3. 环境配置问题:可能缺少了必要的环境配置,导致无法正确执行检索操作。我们需要确认我们的环境配置是否正确,包括系统路径、环境变量等等。 若遇到这些问题,我们可以尝试以下解决方法: 1. 检查组件的存在:确认 `{00024500-0000-0000-c000-000000000046}` 的组件是否正确安装并注册在 `com` 类工厂中。 2. 检查权限:确保当前用户或者进程有足够的权限来检索 `clsid` 为 `{00024500-0000-0000-c000-000000000046}` 的组件。如果权限不足,可以尝试以管理员身份运行程序。 3. 检查环境配置:确保系统的环境配置正确,包括路径和环境变量等。可以尝试重新安装或者重新配置相关组件。 如果以上方法都不能解决问题,可能需要联系组件供应商或开发者以获取进一步的支持和解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值