2012-08-04 68 views
1

使用Visual Studio 2010構建安裝Windows Forms應用程序.Net 4.0 C#的安裝項目。它已經運行良好的年齡,但現在當我試圖安裝完成的安裝文件時,我收到此錯誤消息:嘗試安裝安裝項目時突然出現奇怪的異常,需要幫助大的時間

錯誤1001.無法在「路徑」程序集中獲取已安裝的類型。 - > 無法加載一個或多個請求的類型。檢索 LoaderExceptions屬性以獲取更多信息。

我一直在尋找超過4小時的答案現在沒有找到任何東西。這個問題只是沒有我做任何事情。上次構建安裝文件就像2個星期前一樣,完全沒有問題。我沒有刪除任何與安裝項目有關的參考資料或任何代碼。

這個問題怎麼會出現從無到有,更重要的是,我該如何解決它?

+0

你可以在啓用日誌記錄的情況下運行msi嗎?這可能會提供額外的提示:msiexec/i yourmsi.msi/lvx * yourmsi.log。如果預計會發生綁定錯誤,請使用fuslogvw.exe查看無法找到哪個程序集。你在安裝項目中使用習慣嗎? – rene 2012-08-04 13:54:11

+0

確定這是我能找到: DEBUG:錯誤2835:控制ErrorIcon沒有在對話框ErrorDialog 發現安裝程序遇到意外的錯誤安裝此軟件包。這可能表明此軟件包存在問題。錯誤代碼爲2835的參數是:ErrorIcon,ErrorDialog, 錯誤1001錯誤1001無法獲取的安裝程序類型C:\ ProgramData \ SysApp \ SysDir.exe組裝。 - >無法加載一個或多個請求的類型。檢索LoaderExceptions屬性以獲取更多信息。 – syncis 2012-08-04 14:07:34

+0

DEBUG:錯誤2769:自定義操作_159E88C9_D15A_4CF4_9EA9_A114632FC831.install沒有關閉1個MSIHANDLEs。 安裝程序在安裝此軟件包時遇到意外錯誤。這可能表明此軟件包有問題。錯誤代碼是2769.參數是:_159E88C9_D15A_4CF4_9EA9_A114632FC831.install,1, CustomAction _159E88C9_D15A_4CF4_9EA9_A114632FC831。安裝返回的實際錯誤代碼1603(注意,如果翻譯發生在沙箱內,這可能不是100%準確的) MSI(s)(84:5C)[15:59:26:956]:關閉類型790536的MSIHANDLE(89)線程7208 – syncis 2012-08-04 14:08:20

回答

1

根據您的第二個評論的錯誤信息,看來你SysDir.exe組件已經加入與InstallerClass屬性設置爲true的自定義操作,但要麼沒有安裝類可以在EXE或找到由於缺少依賴關係,exe無法加載。

通過右鍵單擊安裝程序項目,選擇查看,然後選擇自定義操作,您可以看到自定義操作列表。

如果你的exe不能安裝類,那麼你可以從自定義操作列表中刪除它。

如果它確實包含安裝程序類,那麼問題將會丟失依賴關係。如果fuslogvw不適用於您(它總是幫助我們解決這類問題),您可以仔細查看exe項目中的引用列表,並將它們與安裝程序項目中列出的內容進行比較。

我們使用的另一個技巧是在屏幕上顯示錯誤消息時檢查安裝目錄。我們經常可以看到這樣做會丟失DLL,這通常是因爲路徑在安裝程序項目中的DLL條目中輸入錯誤,或者因爲條件設置不正確。