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 ID 文字列の形式が正しくありません
0x8007370B ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME ID の属性の名前が有効な範囲外にあります。
0x8007370A ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE ID の属性の値が有効な範囲外にあります。
0x80070057 ERROR_INVALID_PARAMETER パラメーターが間違っています。
0x800B0100 TRUST_E_NOSIGNATURE サブジェクトに署名がありませんでした。
0x80092003 CRYPT_E_FILE_ERROR Windows Update でファイルの読み取り中または書き込み中にエラーが発生しました。
0x800B0101 CERT_E_EXPIRED 現在のシステム時計または署名ファイルのタイムスタンプで確認すると、必要な証明書の有効期間が過ぎています。
0x8007371B ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE 1 つ以上の要求されたトランザクションのメンバがありません。
0x80070490 ERROR_NOT_FOUND 新しい更新プログラムを検索できませんでした。
0x800f0984 PSFX_E_MATCHING_BINARY_MISSING 一致するコンポーネント ディレクトリは存在しますが、バイナリがありません
0x800f0986 PSFX_E_APPLY_FORWARD_DELTA_FAILED 転送デルタの適用に失敗しました
0x800f0982 PSFX_E_MATCHING_COMPONENT_NOT_FOUND ハイドレーションの一致するコンポーネントを特定できません

たとえば、システム ファイルが破損している場合、更新プログラムをインストールできないことがあります。 DISMは、いくつかのWindows破損エラーを修正するのに役立つかもしれません。

Windows Update トラブルシューティング シナリオについては、このページを確認してください。

DISM を使用して Windows Update の破損を修復する

注:

このセクションで説明する解決策は、Windows 11、Windows 10、Windows Server 2016 以降などのモダン Windows バージョンに適用されます。

Windows Update の破損を解決し、更新プログラムのインストールエラーを解決するには、DISM ツールを使用します。 次に、Windows Update をインストールします。

  1. 管理者特権でのコマンド プロンプトを開きます。 これを行うには、[スタート] メニューまたは [スタート] 画面を開き、「コマンド プロンプト」と入力し、[コマンド プロンプト] を右クリックして、[管理者として実行] を選択します。 管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [許可]を選択します。

  2. 次のコマンドを入力し、Enter キーを押します。 コマンドの処理には数分間かかることがあります。

    DISM.exe /Online /Cleanup-image /Restorehealth
    

    重要

    DISM 修復は、Microsoft Update サーバーに接続して、不足しているファイルまたは破損したファイルをフェッチするときに最適です。 続行コマンドを使用すると、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 PE (WinPE) などの Windows イメージのサービスと修復に使用されるコマンド ライン ツールです。 また、お使いのコンピューター上のローカル 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 MUM が見つかりません: 必要な MUM ファイルが から Microsoft-Windows-Client-Features-Package見つかりません。
    • CSI マニフェストの破損: マニフェストの破損のインスタンスが 2 つありました。 1 つは固定 (wow64_microsoft-windows-audio-mmecore-acm)され、もう 1 つは (wow64_microsoft-windows-audio-volumecontrol) 破損したままです。

データ収集

Microsoft サポートの支援が必要な場合は、「展開関連の問題について TSS を使用して情報を収集する」に記載している手順に従って情報を収集することをお勧めします。