「 檔案具有......變更,或可能已損毀 」 錯誤,當您在 Visual Studio 2010 和自訂的必要條件與.NET Framework 4.5 發佈 ClickOnce 應用程式

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:3072421
徵狀
當您使用.NET Framework 4.5,.NET Framework 4.5.1,.NET Framework 4.5.2 或安裝了新版本的電腦上的 Microsoft Visual Studio 2010 發佈 ClickOnce 應用程式時,可轉散發必要條件套件是不正確封裝如果尚未簽章。因此,使用者會執行 Setup.exe 時收到下列錯誤訊息:

安裝<Application_Name>的系統元件時發生錯誤。安裝程式無法繼續,直到所有的系統元件已成功安裝。</Application_Name>

安裝程式偵測到的檔案<path to="" a="" temporary="" location="" of="" the="" msi="" file="">或是之後已變更它最初發行,或可能已損毀。</path>

請參閱安裝記錄檔位於<path to="" the="" install.log="" file="" in="" the="" temporary="" directory="" under="" the="" user's="" profile="">如需詳細資訊。</path>
此外,下列項目會記錄在 Install.log 檔案,以表示雜湊驗證失敗的不帶正負號的必要條件檔案:

Verifying file integrity of <path to a temporary location of the MSI file> Verifying file hashError: Setup has detected that the file <path to a temporary location of the MSI file> has either changed since it was initially published or may be corrupt.
發生的原因
之所以發生這個問題,是因為在建置處理 generatesthe 必要條件 file'sdigest 時它會封裝必要檔案,請使用 SHA2 雜湊演算法。不過,Setup.exe 檔案會嘗試使用 SHA1 演算法來讀取摘要。因此,不相符,就會發生預期的摘要和實際的摘要,之間,Setup.exe 會決定.msi 檔案遺失或損毀。
解決方案
若要解決這個問題,請確定自訂的必要條件 (.msi) 檔案簽章,如此就不會產生問題的摘要。

或者,使用 Microsoft Visual Studio 2012 或更新的版本。這些程式版本不會遇到這個問題。
其他相關資訊
Visual Studio 2010 Microsoft.Build.Tasks.v4.0.dll 組件中的.NET Framework 以執行 MSBUILD 工作分散。如果開發電腦上安裝了.NET Framework 4.5 或更新的版本,這項建置工作會產生 SHA2 檔案的雜湊必要條件,如果該檔案尚未簽章也一樣。在安裝期間在使用者的電腦上,無法啟動載入器引擎 (Setup.exe) 所產生的 Visual Studio 2010 驗證雜湊。

警告:本文為自動翻譯

內容

文章識別碼:3072421 - 最後檢閱時間:06/21/2015 04:51:00 - 修訂: 1.0

Microsoft Visual Studio 2010 Service Pack 1, Microsoft .NET Framework 4.5.2, Microsoft .NET Framework 4.5.1, Microsoft .NET Framework 4.5

  • kbprb kbexpertiseadvanced kbsurveynew kbmt KB3072421 KbMtzh
意見反應