我使用c#在excel中创建宏,但在我的代码行中
oExcel = new Excel.Application()
我有这个错误
使用CLSID检索组件的COM类工厂 {00024500-0000-0000-C000-000000000046}由于以下原因而失败 错误:80080005服务器执行失败(来自HRESULT的异常: 0x80080005(CO_E_SERVER_EXEC_FAILURE))
我使用IIS 7,visual studio2013(使用asp.net)和windows server 2008
我尝试这种方式但不适合我: 运行> ComponentService>计算机>我的电脑> DCOM配置> Microsoft Excel应用程序>右键单击>属性>安全选项卡>让每个人都能获得完整的控制权
是关于Windows的许可吗?
答案 0 :(得分:2)
来自Microsoft's support page "Considerations for server-side Automation of Office":
Microsoft目前不建议也不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)自动化Microsoft Office应用程序,因为Office可能会出现不稳定Office在此环境中运行时的行为和/或死锁。
上面的文章还具体将您遇到的错误命名为在服务器端应用程序中尝试使用Automation时可能出现的错误。
Excel Automation根本不应该在Web应用程序中使用。目前的建议是使用OpenXML SDK代替。