2012-10-16 55 views
0

下面的錯誤即將到來,而我從域服務創建使用下面的行。Silverlight錯誤 - 創建互操作excel的Workbook對象時

Microsoft.Office.Interop.Excel.Workbook excel = new Microsoft.Office.Interop.Excel.Workbook(); 


--------------------------- 
Error 
--------------------------- 
Invoke operation 'CallExcel' failed. Retrieving the COM class factory for component with CLSID {00020819-0000-0000-C000-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). 
--------------------------- 
OK 
--------------------------- 

這個奇怪的錯誤是什麼原因造成的?如果我使用word對象,那麼它也適用於interop。

+0

您是從瀏覽器中運行的Silverlight代碼還是從服務器調用此代碼?你確定最終用戶安裝了Office並且版本正確嗎? –

+0

Silverlight不具有'Interop'接口,但AutomationFactory具有'dynamic'對象。所以,這是一個服務器端代碼:) –

+0

我還有一個問題,當我運行/打開使用WCF的Word文檔模板文件時,它工作正常。 (注意:單詞模板文件由宏組成)。但是,當我打開任何由宏(包含對話框選擇的宏)組成的文件。 Silverlight頁面掛起是因爲WCF服務在服務器端打開該宏對話框。如果我在本地運行應用程序,則工作正常,並且還會在本地環境中打開宏對話框我能爲此做些什麼? –

回答

0

你應該創建excel應用程序。第一。 MSDN

+0

是的,謝謝 - 我也是這麼想的。 –