2016-11-03 109 views
0

我試圖打開Excel工作簿時出現錯誤:Excel的互操作錯誤在打開工作簿

var workbook = Workbooks.Open(filePath) 

之後,每次我有時間:

從HRESULT異常:0x80020005(DISP_E_TYPEMISMATCH)

什麼是有趣的,當即時通訊Thread.Sleep(2000年)之前「打開」功能 一切工作正常:

Thread.Sleep(2000); 

var workbook = Workbooks.Open(filePath) 

代碼正在主線程上運行。

任何想法應該導致這種行爲?

謝謝!

+0

如果睡眠正在修復它,那麼你可能需要向我們展示以前的調用,比如'DoAsyncTaskThatOpensExcelButTakesASecondBeforeItsDone()',比如'Process.Start()'(粗略地說,當過程存在時認爲它會返回,這意味着Excel已經準備好與之交互了)。 – Quantic

+0

你如何打開Excel? – Hambone

回答

0

我修復了這個問題。

Excel工作簿打開兩次,每次我調用releaseCom方法。