2013-08-12 87 views
1

我在.Net中創建了一個應用程序,它將在服務器上創建一個excel文件,並將通過電子郵件將其作爲附件發送。 我收到以下錯誤,當應用程序試圖在服務器上創建Excel文件:在服務器上創建Excel文件時出錯

Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80040154

通過對這個問題,之後一些網絡上搜索類似的帖子,我發現我需要在服務器上安裝MS Office 。

我還想知道,如果有其他方式(即不安裝MS Office),我可以通過它來達到我的要求。

在此先感謝。

回答

0

我終於安裝微軟Office &它開始工作。謝謝大家的回覆。

0

是的,您可以使用第三方excel工具。應該從NuGet獲得ClosedXML。它對DocumentFormat.OpenXml具有單一的依賴關係,是非常有效的工具。

+0

感謝您的回覆,但對於使用此第三方工具,我將不得不對我的代碼進行更改。我想知道是否有更簡單的方法來完成此操作,如簡單地添加DLL或更改設置。 – ABC

+0

用法與經典的excel interop非常接近。你可以改變容易。無論如何,在你的解決方案中找到正確的DLL(Microsoft.Office.Interop.Excel vs)版本。使用解決方案資源管理器,找到互操作引用並使用屬性來確定他們的版本。因此,從Microsoft網站下載互操作庫設置並安裝到生產機器。 –

0

真的取決於您的需求。

如果你想創建csv文件,那麼它會相當簡單 - 只需轉儲帶分隔符的文本文件。

如果您想要創建複雜的excel文件(基於xml的excel文件,.xlsx等),您可以考慮使用openXML,並且還有大量的其他第三方工具也包裝它。

裁判:http://www.microsoft.com/en-us/download/details.aspx?id=5124