System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 ...

本文介绍了作者在将应用部署到IIS上时遇到的一个问题,即在尝试发送带有Excel附件的邮件时,系统抛出System.UnauthorizedAccessException异常。经过排查,发现原因是aspnet(在Windows XP上)或network service(在Windows 2003上)账户没有足够的权限访问COM组件。解决方案是通过运行dcomcnfg,调整Microsoft Excel Application的权限设置,将其改为交互式用户,并为ASPNET或network service账户添加相应的访问权限。
摘要由CSDN通过智能技术生成

今天客户说系统发不出来邮件,可是我是测试过才发的版本呀!

所以我想是不是发布的时候有问题,然后我发布了一个挂到IIS上,结果发现真发不出来。

然后我找呀找,因为我的邮件是带附件的,所以我去看附件有没有生成,进而发现附件(.xls文件)都没有。

我就很纳闷了,为什么在VS上运行没问题,在IIS上就不行呢,所以我就在发邮件的那段代码上加了个catch

然后把捕捉到得catch写到ini文件上,然后再发布看结果。

结果问题出来了:System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。

上网一查是aspnet(XP)权限的问题,在2003系统里是network service.

解决方法:<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值