共用方式為


修正 Windows Update 損毀和安裝失敗

本文提供您進階的手動方法,以修正使用部署映像服務與管理 (DISM) 工具防止 Windows Update 成功安裝的問題。

注意事項

本文主要提供給支援專員與 IT 專業人員使用。 如果您是家用版使用者,並在尋找修正 Windows Update 錯誤的詳細資訊,請參閱修正 Windows Update 錯誤

原始 KB 編號:947821

常見的損毀錯誤

如果發生損毀錯誤,Windows 更新可能會無法安裝。 您可以檢查安裝程式事件記錄檔中是否有錯誤。 下表列出 Windows Update 可能出現的錯誤碼,以供您參考:

代碼 錯誤 描述
0x80070002 ERROR_FILE_NOT_FOUND 系統找不到指定的檔案。
0x800f0831 CBS_E_STORE_CORRUPTION CBS 商店已損毀。
0x8007000D ERROR_INVALID_DATA 資料無效。
0x800F081F CBS_E_SOURCE_MISSING 找不到套件或檔案的來源。
0x80073712 ERROR_SXS_COMPONENT_STORE_CORRUPT 元件存放區處於不一致的狀態。
0x800736CC ERROR_SXS_FILE_HASH_MISMATCH 元件的檔案與元件資訊清單中呈現的驗證資訊不符。
0x800705B9 ERROR_XML_PARSE_ERROR 無法剖析請求的 XML 資料。
0x80070246 ERROR_ILLEGAL_CHARACTER 發生不正確字元。
0x8007370D ERROR_SXS_IDENTITY_PARSE_ERROR 識別字串格式不正確。
0x8007370B ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME 識別中的屬性名稱不在有效範圍內。
0x8007370A ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE 識別的屬性值不在有效範圍內。
0x80070057 ERROR_INVALID_PARAMETER 參數不正確。
0x800B0100 TRUST_E_NOSIGNATURE 主旨中不存在任何簽名。
0x80092003 CRYPT_E_FILE_ERROR Windows 更新讀取或寫入檔時發生錯誤。
0x800B0101 CERT_E_EXPIRED 對目前系統時鐘或已簽署檔案中的時間戳記進行驗證時,所需的憑證不在其有效期間內。
0x8007371B ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE 交易的一或多個必要成員不存在。
0x80070490 ERROR_NOT_FOUND Windows 無法搜尋新的更新。
0x800f0984 PSFX_E_MATCHING_BINARY_MISSING 符合的元件目錄存在,但是二進位遺失
0x800f0986 PSFX_E_APPLY_FORWARD_DELTA_FAILED 套用正向 delta 失敗
0x800f0982 PSFX_E_MATCHING_COMPONENT_NOT_FOUND 無法識別序列化的相符元件

例如,如果系統檔案有所損毀,可能無法安裝更新。 DISM 可協助您修正一些 Windows 損毀錯誤。

請查看此頁面,以了解 Windows Update 疑難排解案例 (部分機器翻譯)。

使用 DISM 修復 Windows Update 損毀

注意事項

本節所述的解決方案適用於最新 Windows 版本,例如 Windows 11、Windows 10、Windows Server 2016 或更新版本。

若要解決 Windows Update 損毀並解決更新安裝失敗的問題,請使用 DISM 工具。 然後,安裝 Windows Update。

  1. 開啟提高權限的命令提示字元。 若要執行此動作,請開啟 [開始] 功能表或 [開始] 畫面,輸入命令提示字元,以滑鼠右鍵按一下 [命令提示字元],然後選取 [以系統管理員身分執行]。 若提示您輸入系統管理員密碼或進行確認,請輸入密碼或選取 [允許]

  2. 輸入下列命令,然後按下 Enter。 這可能要花費幾分鐘的時間才能完成命令操作。

    DISM.exe /Online /Cleanup-image /Restorehealth
    

    重要事項

    當您連線到 Microsoft Update 伺服器以擷取遺失或損毀的檔案時,DISM 修復效果最佳。 當您使用繼續命令時,DISM 會取得修正 Windows Update 中任何損毀所需的檔案。 不過,如果您的計算機無法連線到 Windows Update,您也可以使用運作中的 Windows 安裝作為修復來源,也可以使用來自網路上 Windows 資料夾或 USB 或 DVD 的檔案。 請改用此指令:

    DISM.exe /Online /Cleanup-Image /RestoreHealth /Source:\\<servername>\c$\winsxs /LimitAccess
    

    注意事項

    將 servername> 取代<為您用來作為修復來源之電腦的電腦名稱。 如需有關如何使用 DISM 工具修復 Windows 的詳細資訊,請參閱修復 Windows 映像。 如果掃描結果是「還原作業已成功完成」,請移至下一個步驟。 如果沒有,請嘗試修正 CBS 記錄檔中找到的錯誤。

  3. 輸入 sfc /scannow 命令,然後按下 Enter。 這可能要花費幾分鐘的時間才能完成命令操作。

  4. 關閉命令提示字元,然後再次執行 Windows Update

DISM 會 (%windir%\Logs\CBS\CBS.log) 建立記錄檔,以擷取工具找到或修正的任何問題。               %windir% 是指 Windows 安裝所在的資料夾。 例如,%windir% 資料夾是 C:\Windows

DISM 修復如何運作?

DISM 是用來服務和修復 Windows 映像的命令行工具,包括 Windows 修復環境、Windows 安裝程式和 Windows PE (WinPE) 。 它也可以用來修復您電腦上的本機 Windows 映像。

為了讓您更加瞭解,以下是 DISM 工具檢查完整性的資源摘要:

  • 檔案位於下列路徑:
    • %SYSTEMROOT%\Servicing\Packages
    • %SYSTEMROOT%\WinSxS\Manifests
  • 位於下列登錄子機碼下的登錄資料:
    • HKEY_LOCAL_MACHINE\Components
    • HKEY_LOCAL_MACHINE\Schema
    • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing

您可以隨時更新此清單。 當 DISM 偵測到不正確的指令清單、封包或登錄數據時,可能會將不正確的數據取代為更正的版本。

記錄

DISM 工具會建立記錄檔,以擷取工具找到或修正的任何問題。 記錄檔位於下列位置:

  • %SYSTEMROOT%\Logs\CBS\CBS.log
  • %SYSTEMROOT%\Logs\CBS\CBS.persist.log

修正在檔案中找到的損CBS.log

若要手動修正 DISM 工具偵測到但無法修正的損毀錯誤,請遵循下列步驟:

  1. 開啟 %SYSTEMROOT%\Logs\CBS\CBS.log

    注意事項

                  %SYSTEMROOT% 是儲存 Windows 安裝所在資料夾的環境變數。 例如,%SYSTEMROOT% 資料夾是 C:\Windows

  2. 識別工具無法修正的套件。 例如,您可以在記錄檔中找到下列資訊:

    Checking System Update Readiness.
    (p)	CSI Payload Corrupt			(n)	    	amd64_microsoft-windows-a..modernappmanagement_31bf3856ad364e35_10.0.19041.3636_none_23b3b3ece690d77b\EnterpriseModernAppMgmtCSP.dll
     (p)	CBS MUM Missing				(n)			Microsoft-Windows-Client-Features-Package~31bf3856ad364e35~amd64~~10.0.19041.4291
     (p)	CSI Manifest Corrupt		(w)	(Fixed)	wow64_microsoft-windows-audio-mmecore-acm_31bf3856ad364e35_10.0.19041.1_none_a12b40f4b4c7b751
    (p)	CSI Manifest Corrupt	    (n)			wow64_microsoft-windows-audio-volumecontrol_31bf3856ad364e35_10.0.19041.3636_none_4514b27cf12f35d5
    
    Summary:
    Operation: Detect and Repair
    Operation result: 0x800f081f
    Last Successful Step: Remove staged packages completes.
    Total Detected Corruption:	4
     CBS Manifest Corruption:	1
     CBS Metadata Corruption:	0
     CSI Manifest Corruption:	2
     CSI Metadata Corruption:	0
     CSI Payload Corruption:	1
    Total Repaired Corruption:	1
     CBS Manifest Repaired:	0
     CSI Manifest Repaired:	1
     CSI Payload Repaired:	0
     CSI Store Metadata refreshed:	True
    Staged Packages:
     CBS Staged packages:	0
     CBS Staged packages removed:	0
    ...
    
    • CSI 承載損毀:這表示承載檔案 EnterpriseModernAppMgmtCSP.dll 已損毀。
    • CBS 的 MISSING 遺失:中遺漏 Microsoft-Windows-Client-Features-Package了必要的一個的一個。。
    • CSI 指令清單損毀:有兩個指令清單損毀的實例。 其中一個已修正 (wow64_microsoft-windows-audio-mmecore-acm),另一個 (wow64_microsoft-windows-audio-volumecontrol) 仍然損毀。

資料收集

若您需要 Microsoft 支援,建議您按照使用 TSS 收集部署相關問題的資訊所述步驟來收集資訊。