excel导出报错,求大神解决

zngirls520 2014-12-03 10:43:46
程序在本机跑很好,发布在服务器上,开始也能导出excel,但是过一段时间,大概3天后,就导出报错,提示如下
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 8000401a 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。 (Exception from HRESULT: 0x8000401A).

Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();//这里报错的

然后我又部署一个新版本上去,又好了,但是过几天后又出现这个问题,网上查应该是权限问题,试了几种方法都没有用,请大神们帮看看。

...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zngirls520 2014-12-03
  • 打赏
  • 举报
回复
我用了<identity impersonate="true" userName="机器管理员登录名" password="密码"/> ,但是好像没有效果呢
丁焕轩 2014-12-03
  • 打赏
  • 举报
回复
方法一:   1:在服务器上安装office的Excel软件.   2:在 "开始 "-> "运行 "中输入dcomcnfg.exe启动 "组件服务 "   3.在"DCOM配置"中找到"Microsoft Excel 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框   4.点击"标识"标签,选择"交互式用户"   5.点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限   6.依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限.   7.依然是"安全"标签,在"配置权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限.   如果5,6,7没有用,再加一个“Everyone”用户 方法二:   在 web.config文件下的 <system.web>节点增加如下节点,那肯定行了。不过这个不好。 <identity impersonate="true" userName="机器管理员登录名" password="密码"/>
jhdxhj 2014-12-03
  • 打赏
  • 举报
回复
引用 1 楼 diaodiaop 的回复:
一般来说 我们都用NPOI 用了他 我的服务器不需要安装office.也不需要配置任何权限....当然也兼容很多版本...
好东西
by_封爱 2014-12-03
  • 打赏
  • 举报
回复
一般来说 我们都用NPOI 用了他 我的服务器不需要安装office.也不需要配置任何权限....当然也兼容很多版本...
於黾 2014-12-03
  • 打赏
  • 举报
回复
几年前也用office.excel.dll在web项目中应用过 那时候为了解决DCOM配置问题,到网上找到的解决办法,步骤整整有19条之多 我劝楼主还是认真看看1楼给的链接,就不要再纠结DCOM了

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧