2015-12-02 570 views
1

我與Windows 2010一起在Windows 7(旗艦版)開發人員計算機上安裝了Office 2016預覽版。我有以下簡單的C#WinForms應用程序,它嘗試創建WordWord 2016自動生成「錯誤:80080005服務器執行失敗」

using Word = Microsoft.Office.Interop.Word; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      Word.Application word = new Word.Application(); // <- Causes exception 
      ... 
     } 
} 

應用程序生成以下錯誤:有問題的錯誤

Additional information: Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).

大多數搜索結果上面涉及到那裏的人都試圖在運行Office程序的(早期)版本的情況下,通過自動化的文檔實際系列VERS。

我錯過了什麼嗎?

PS:辦公室2016本身,它在添加沒有進入一個奇怪的野獸/刪除程序,其deployment tool只有選擇應用程序從下載排除選項,用於修復現有安裝的選項。

+0

如果您以前在同一個Windows中安裝過任何其他Office,很可能它沒有完全卸載或損壞。如果您有任何第一步,我建議您卸載以前的任何版本。如果問題仍然存在,我建議您打開註冊表編輯器,進入HKLM \ Typelib並搜索「Interop」,每個文件夾應該只有一個文件夾,因爲每個文件夾都代表一個版本;例如:Word 8.5> Office 2010,8.6> 2013 –

+0

@cFrozenDeath謝謝。我假設你的意思是HKEY_CLASSES_ROOT,而不是HKLM? – Sabuncu

+0

Ooops,是的,這就是我的意思 –

回答

1

我試着通過創建一個WinForms項目並以.NET 4.0爲目標,儘可能地模仿您的系統。我可以創建一個沒有任何異常的Word.Application對象。
我敢肯定,你正在接受由於Windows註冊表損壞導致的錯誤,可能會被Office本身破壞。

有3個東西,你可以放棄之前做:

  1. 轉到here,並按照使用SCANREG清理註冊表中的步驟/修復
  2. 卸載每個Office產品,打開註冊表並刪除每個與Office相關的密鑰,然後再次安裝2016(確保先備份所有數據)
  3. 重新安裝Windows。

我曾在該應用程序是非常集成Excel和Word應用支撐位置,通過插件,我不得不研究和解釋給開發團隊(另一家供應商)爲什麼會這樣,以及如何它在某些情況下可以解決。
直到我找到上面的第1步以及我在第一次對您的問題發表評論時告訴您的步驟,每一個案例都使用第3步解決。

+0

非常感謝你的努力,也非常感謝你的指導。 – Sabuncu

+0

不幸的是,scanreg不在我的Windows 7系統上,我找不到可靠的網站下載! :( – Sabuncu

+0

試試[這](http://www.tomshardware.com/forum/7245-63-check-windows-registry-problems)。不用客氣,這些問題吸吮 –

相關問題