在c#Web应用程序中创建excel文件时出错

在c#Web应用程序中创建excel文件时出错,c#,asp.net,excel,C#,Asp.net,Excel,创建excel文件时出现以下错误 System.UnauthorizedAccess异常: 正在检索的COM类工厂 具有CLSID的组件 {00024500-0000-0000-C000-0000000000 46} 由于以下错误而失败: 80070005访问被拒绝。(例外情况 来自HRESULT:0x80070005 (E_)。在 中的QA.CreateExcel.createDoc() e:\~~CreateExcel.cs:line 三十三 我正在使用这个代码 private Office

创建excel文件时出现以下错误

System.UnauthorizedAccess异常: 正在检索的COM类工厂 具有CLSID的组件 {00024500-0000-0000-C000-0000000000 46} 由于以下错误而失败: 80070005访问被拒绝。(例外情况 来自HRESULT:0x80070005 (E_)。在 中的QA.CreateExcel.createDoc() e:\~~CreateExcel.cs:line 三十三

我正在使用这个代码

private Office.Excel.Application app =new Office.Excel.Application();

m使用fw 4.0及其Web应用程序

Office 2007/2010文件格式是包装在ZIP中的XML文件,无需安装Office即可在服务器端创建。一些在线搜索将揭示简化搜索任务的解决方案

例如,Codeplex有一个项目,它使实现自动化几乎和自动化Excel一样简单,但没有遇到任何问题


好吧,在服务器上安装Excel,并授予IIS使用它的权限。这将是不稳定的,很可能你的主机提供商甚至不允许你(除非你在自己的服务器上托管)。这还需要您获得办公许可证


由于稳定性和可靠性问题,Microsoft建议不要在服务器上安装Office。关注其中一些问题,并提及一些替代方案

不要在web应用程序中自动化excel。它不会很好地工作。但是它是必需的,没有其他选项,还有其他选项。有几个库允许您在没有office的情况下生成和阅读Excel和其他office文档。