获取错误类尝试使用c#生成excel文件时未注册
我已经使用C#代码dynamic地生成了Excel文件,其中我引用了Microsoft.Office.Interop.Excel
在本地机器上一切工作正常。
但是当我在Windows Azure
上部署我的应用程序时,我收到以下错误,当我尝试生成Excel文件并保存它。
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)
我怀疑你可能需要在azure实例上安装office(这是不推荐的,因为excel是一个clinet应用程序等等)。
以下是安装指南: 在Windows Azure上安装第三方软件您有三个选项:启动任务,RDP或VMangular色。 我相信虚拟机angular色是build议的方式。
也许下一次你想从服务器应用程序创buildexcel文件的时候使用openXML。 或者花一些钱来支持预先打开的XML文件。
您可能会在服务器上安装Office,从而遇到许可问题,顺便说一句,我不是这里的专家。 任何人都在关心评论?
1个月前,我面临同样的问题,并通过在我的代码中创buildExcelWriter类来解决。
而不是使用MS Excel DLL生成Excel文件,您可以在您的代码中创build自己的Excel代码。
下面的链接可以解决你的问题(我猜)。
http://www.codeproject.com/Articles/33850/Generate-Excel-files-without-using-Microsoft-Excel
- 仅在Azure上出现错误 – “Microsoft.ACE.OleDb.12.0”提供程序未在本地计算机上注册
- VSTO是否在Windows Azure上运行?
- 读取excel文件并在C#中的数据库中插入logging – Windows Azure
- 一个Excel文件托pipe在Azure Blob上,如何将其读入FileStream?
- 如何将Azure机器学习输出导出到CSV
- ASP.NET WebApi无法在Azure中使用COM(Excel)
- 在ASP.NET MVC 5.1中保存Excel文件导致COMException – >它试图将它保存在我的文档中,而不是在项目资源中
- 用内存stream从URL中读取Excel
- 如何在Azure上运行excel?