0

コードをローカルで実行しても問題ありませんが、サーバーでコードを実行すると、次のエラーが発生します。

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)).

次の行にエラーが表示されます。

excelObj = 新しい Microsoft.Office.Interop.Excel.Application();

これは説明です:

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Runtime.InteropServices.COMException: 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)).

Source Error: 


Line 169:            Microsoft.Office.Interop.Excel.Workbook workbook = null;
Line 170:
Line 171:            excelObj = new Microsoft.Office.Interop.Excel.Application();
Line 172:
Line 173:            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

このエラーは私のコードまたはサーバーに関連していますか?

前もって感謝します..ここに画像の説明を入力

4

1 に答える 1

3

これは、Excel Interop アセンブリが運用サーバーに登録されていないことを意味します。自動化された環境 (ASP.NET など) で Office 相互運用機能を実際に使用したくない場合は、これで問題ありません。代替案については、記事を参照してください。

于 2012-08-06T08:47:17.957 に答える