首先声明我的开发环境是 IIS6.0,ASP.NET 2.0。
我的项目中使用Excell.dll组件操作excel文件,在VS 2005调试的时候一切正常,但以部署到服务器上就出现了以下错误:
System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {
00024500
-
0000
-
0000
-
C000
-
000000000046
} 的组件时失败,原因是出现以下错误:
80070005
。
在 ExcelHelper.StartExcel() 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeExcelHelper.cs:行号 111
在 ExcelHelper..ctor(Boolean visible) 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeExcelHelper.cs:行号 101
在 ScoreCard.Process(String country) 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeScoreCard.cs:行号 109
在 ExcelHelper.StartExcel() 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeExcelHelper.cs:行号 111
在 ExcelHelper..ctor(Boolean visible) 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeExcelHelper.cs:行号 101
在 ScoreCard.Process(String country) 位置 d:DotNetworkspaceWebSitesScoreCardApp_CodeScoreCard.cs:行号 109
Google 一下,也找到了一些方案,但均不凑效,后来经过尝试,找到了如下的 解决方案:
在Web.config文件中的 system.web节 中加入
<
identity impersonate
=
"
true
"
userName
=
"
JAMES/Administrator
"
password
=
"
##################
"
/>
userName 的格式为:{机器名}/{用户名} password 为登录密码
如果大家需要Excell.dll,请和我联系:MSN: hb_cattle@hotmail.com
本文介绍了一种在ASP.NET环境下使用Excel DLL时遇到的系统未经授权访问异常问题及其解决方案。通过配置Web.config文件实现身份模拟,成功解决了部署后无法正常使用Excel DLL组件的问题。
373

被折叠的 条评论
为什么被折叠?



