项目中使用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 为登录密码