Windowsエラー
 Computer >> コンピューター >  >> トラブルシューティング >> Windowsエラー

Windows Updateエラー0x800f0845の解決方法|原因と6つの対処法を徹底解説

Windows 10/11で累積更新プログラムなどのパッチをインストールする際、エラーコードが表示されてインストールが妨げられることがあります。本記事では、0x800f0845エラーの修正方法について詳しく解説します。この問題が発生すると、更新プロセス自体は正常に開始されますが、PCの再起動後にエラーが表示されるのが特徴です。さらに、必ずしも更新作業だけを妨げるとは限らず、Windows 10/11が再起動ループに陥る原因になるケースもあります。

一般的に、更新エラーはシステムコンポーネントの破損、ドライバーの損傷、サービスの不具合などによって発生します。そのほかにも、ソフトウェア同士の競合、更新ファイル自体の破損、セキュリティソフトの過剰な干渉などが考えられます。0x800f0845エラーの正確な原因は特定しにくいため、状況に応じて複数の対処法を順番に試していく必要があります。

Windows Updateエラー0x800f0845とは?

このエラーは、MeltdownおよびSpectreと呼ばれるCPUの脆弱性を修正するために提供された更新プログラム「KB4056892」(Windows 10/11 Fall Creators Update向け)をインストールする際に、多くのユーザーが遭遇しました。KB4056892のインストールが失敗し、「更新エラー0x800f0845」が表示されるという報告が相次ぎました。

これは、配信段階で不具合を抱えていた更新プログラムの代表的な例ですが、KB4103721やKB4566782など、他のパッチのインストール時に発生することもあります。お使いのWindows 10/11環境でKB4056892やその他の機能更新プログラムをダウンロード・インストールできない場合は、他の作業に進む前にまずエラーを解決しておくことが重要です。

0x800f0845エラーの主な原因

0x800f0845エラーはシステムファイルの破損によって引き起こされる可能性があるため、まずはDISMとSFCという2つの内蔵ツールを使って破損箇所を特定・修復することをおすすめします。それでも改善しない場合は、上書きインストール(修復インストール)による復旧を検討しましょう。

もう一つのよくある原因は、Windows Updateのサブコンポーネントの一部が中途半端な状態(有効化も無効化もされていない停止状態)になっていることです。これに該当する場合は、更新プロセスに関わるすべてのWU(Windows Update)コンポーネントをリセットすることで問題を解決できる可能性があります。

影響を受けたユーザーの報告によれば、この問題(特定のWindows更新プログラムをエラーコード0x800f0845でインストールできない症状)は、破損したシステムファイルがWindows Updateコンポーネントに悪影響を及ぼすことによって発生することが多いとされています。

Windows Updateエラー0x800f0845の解決方法

この問題に直面している場合は、まずWindows Updateトラブルシューティングツールを実行し、OSが自動的に問題を解決できるかどうかを確認しましょう。ツールで解決できない場合は、更新処理に関わるすべてのWUコンポーネントを、手動または更新エージェントを使ってリセットします。

エラーの原因がシステムファイルの破損である場合は、DISMとSFCという2つの内蔵ツールで検出・修復を試みてください。それでも解決しない場合は、上書きインストール(修復インストール)によるクリーンな状態への復旧を検討します。

Windowsの完全な再インストールを避けたい方は、Microsoft Updateカタログから保留中の更新プログラムを手動でインストールすることで、壊れたWUコンポーネントを回避できる可能性が高いでしょう。以下、各解決策を順番に見ていきます。

解決策1:Windows Updateトラブルシューティングツールを使用する

他の方法を試す前に、まずPCが自動的に問題を解決できるかどうかを確認しましょう。幸い、Windows 10/11を含む近年のWindowsには、Windows Updateに関する典型的な不整合をスキャンし、既知のパターンを検出した際に推奨される修正を自動的に適用できるユーティリティが標準搭載されています。

すべての既知の問題を解決できるわけではありませんが、0x800f0845エラーコードのトラブルシューティングとしては最適な出発点です。

以下の手順でWindows Updateトラブルシューティングツールを実行し、推奨される修正を適用してください。

  1. まずスタートボタンを押します。スタートメニューが表示されたら、歯車のアイコンをクリックして設定アプリを開きます。Windowsキー + Iを同時に押して設定アプリを開くことも可能です。
  2. 設定画面で、ウィンドウ下部にある更新とセキュリティをクリックします。
  3. 左側のメニューからトラブルシューティングを選択します。
  4. 続いてWindows Updateを選びます。
  5. トラブルシューティングツールの実行というボタンが表示されるので、クリックします。
  6. トラブルシューティングツールがWindows Updateに関わる問題をスキャンします。
  7. 適用が必要な重要な修正が見つかった場合は、スキャン完了後に指示が表示されます。
  8. 修正候補が表示されたら適用ボタンをクリックして実行します。
  9. トラブルシューティングが完了したら、再度システムの更新を試してみてください。

解決策2:SFCおよびDISMスキャンを実行する

影響を受けたユーザーの報告によれば、この問題(エラーコード0x800f0845とともに特定のWindows更新プログラムのインストールに失敗する症状)は、破損したシステムファイルがWindows Updateコンポーネントを壊すことで頻繁に発生します。

深刻な問題に思えますが、幸いなことにWindows 10/11には、破損したシステムファイルの大部分を自動的に修復できる2つの内蔵ツール(DISMとSFC)が用意されています。

SFC(システム ファイル チェッカー)は完全にローカルで動作するツールで、ローカルに保存されたアーカイブ内の正常なコピーと置き換えることで破損ファイルを修復します。

一方、DISM(展開イメージのサービスと管理)はWUのサブコンポーネントを利用して、置き換えが必要な破損ファイルの正常なコピーをダウンロードします。SFCよりも強力ですが、DISM自身が依存しているサブコンポーネントまで破損している場合は効果が損なわれる可能性があります。

両ツールは仕組みが異なるため、SFCとDISMの両スキャンを連続して実行することで、0x800f0845の原因となっている破損インスタンスを解決できる可能性が高まります。

まずSFCスキャンを実行し、処理が完了するまでじっくり待ちましょう。処理の中断はHDD/SSDに論理エラーを引き起こし、さらなる問題につながる恐れがあります。

スキャンが完了したらPCを再起動し、次回の起動が完了してからDISMスキャンを実行します。

DISMは安定したインターネット接続を必要とするため、作業を始める前に安定したネットワークに接続していることを確認してください。

2回目のスキャンが完了したら再度PCを再起動し、次回起動時に問題が解消されているかどうかを確認しましょう。

解決策3:セーフモードでWindows更新プログラムをアンインストールする

KB4056892の不具合はMicrosoftに報告され、Microsoftは即座に対応としてWindows 7およびWindows 10/11向けパッチの展開ペースを緩めました。

すでにKB4056892をインストール済みでシステムが起動できなくなってしまったユーザーに対して、Microsoftは0x800f0845によるBSOD(ブルースクリーン)を修正する公式の回避策を公開しています。該当する場合は、以下の手順を試してください。

  1. Windowsの再起動を連続で数回試みます。3回連続で再起動に失敗すると、自動修復が起動します。
  2. 自動修復の画面でトラブルシューティング > 詳細オプションを選択します(※追加の回復オプションを表示をクリックしないと項目が現れない場合があります)。
  3. スタートアップ設定から再起動を選択します。
  4. F4キーまたは4キーを押してセーフモードで起動します。
  5. セーフモード中にWindowsキー + Iを押して設定を開きます。
  6. 更新とセキュリティセクション内のWindows Updateをクリックします。
  7. 更新履歴からKB4056892を選択し、アンインストールをクリックします。

解決策4:Windows Updateコンポーネントをリセットする

このエラーのもう一つのよくある原因は、Windows Updateのサブコンポーネントの一部が中途半端な状態(有効化も無効化もされていない状態)で止まっていることです。これに該当する場合は、更新処理に関わるすべてのWUコンポーネントをリセットすることで問題を解決できるはずです。

リセットは、自動スクリプトを実行する方法と、昇格されたコマンドプロンプトから手動で行う方法の2通りがあります。それぞれのユーザー向けに、両方のガイドを用意しました。

更新エージェントを使ってリセットする場合:

  1. Reset Windows Update Agentの配布ページをブラウザで開き、ResetWUEng.zipDownloadボタンをクリックしてダウンロードします。
  2. ダウンロードが完了したら、7-ZipやWinZipなどのユーティリティでアーカイブを開いて展開します。
  3. 展開後、ResetWUEng.exeをダブルクリックし、ユーザーアカウント制御(UAC)の画面が表示されたらはいを選択します。
  4. 最終確認画面ではいをクリックし、処理が完了するまで待ってからPCを再起動します。

PCが再起動したら、以前0x800f0845エラーで失敗していた更新プログラムを再インストールし、問題が解決したかどうかを確認してください。

昇格されたコマンドプロンプト(CMD)を使ってリセットする場合:

  1. Windowsキー + Rを押してファイル名を指定して実行ダイアログを開きます。テキストボックスにcmdと入力し、Ctrl + Shift + Enterを押して管理者権限のコマンドプロンプトを起動します。UAC(ユーザーアカウント制御)の確認画面が表示されたらはいをクリックして管理者権限を付与します。
  2. 管理者コマンドプロンプト内で、Windows Update関連のサービスをすべて停止するため、以下のコマンドを任意の順序で入力し、それぞれ入力後にEnterキーを押します。
  • net stop wuauserv
  • net stop cryptSvc
  • net stop bits
  • net stop msiserver
  1. 関連サービスをすべて停止したら、次に以下のコマンドを記載の順序で実行し、それぞれ入力後にEnterキーを押します。
  • ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
  • ren C:\Windows\System32\catroot2 Catroot2.old
  1. この操作により、SoftwareDistributionフォルダとCatroot2フォルダの中身が消去され、名前が変更されます。これら2つのフォルダは、WUコンポーネントがOSの更新用一時ファイルを保存する場所として使用しています。通常の方法では削除できないため、フォルダ名を変更してOSに新しいフォルダを作成させる必要があります。
  2. 2つのフォルダの名前変更が完了したら、手順2で停止したサービスを再有効化するため、以下のコマンドを任意の順序で入力し、それぞれ入力後にEnterキーを押します。
  • net start wuauserv
  • net start cryptSvc
  • net start bits
  • net start msiserver

すべてのサービスを再起動したら、以前失敗していたWindows Updateを再実行し、0x800f0845エラーコードなしで処理が完了するかどうかを確認してください。それでも問題が解決しない場合は、次の解決策に進みましょう。

解決策5:Microsoft Updateカタログから更新プログラムを手動インストールする

ここまでの方法で0x800f0845エラーコードを特定・解決できなかった場合でも、ローカルのWindows Updateコンポーネントに頼らず、保留中の更新プログラムを手動でインストールすれば問題を回避できます。

これはMicrosoft Updateカタログを使えば簡単に行えます。実際にこの方法でOSを最新バージョンに更新できたという報告も多数寄せられています。

なお、この方法では0x800f0845エラーコードの根本原因は解決されない点に注意してください。あくまで保留中の更新プログラムをインストールできるようにする一時的な対処法です。

この方法を選択した場合は、以下の手順に従ってMicrosoft Updateカタログから保留中の更新プログラムを手動でインストールしてください。

  1. ブラウザでMicrosoft Updateカタログの公式サイトにアクセスします。
  2. 検索機能を使って、エラーコード0x800f0845でインストールに失敗している更新プログラムを探します。
  3. 検索結果が表示されたら、OSアーキテクチャとWindowsバージョンを確認し、お使いのWindowsビルドに対応するバージョンを見極めます。
  4. OSのアーキテクチャが不明な場合は、エクスプローラーでPCを右クリックし、コンテキストメニューからプロパティを選択します。システムの種類欄でOSのビット数を確認できます。
  5. インストールすべき更新プログラムを特定したら、ダウンロードボタンをクリックして処理が完了するのを待ちます。
  6. ダウンロードが完了したら保存先フォルダを開き、.infファイルを右クリックしてインストールを選択します。
  7. 画面の指示に従ってインストールを完了させ、未インストールの更新プログラムがなくなるまで手順2〜5を繰り返します。
  8. 保留中の更新プログラムをすべてインストールし終えたらPCを再起動し、Windows Updateの画面から保留中の更新が消えていることを確認しましょう。

解決策6:クリーンインストールを実行する

上記のいずれの方法でも問題を解決できなかった場合、システムファイルの破損が深刻で、従来の手法では修復できない状態である可能性が高いです。この場合は、修復インストール(上書きインストール)またはクリーンインストールを行い、Windowsの全コンポーネントを初期化するしかありません。

特定のWindowsコンポーネントのみをリセットしたい場合は、修復インストール(上書きインストール)が最適です。この操作はOSコンポーネントにのみ影響し、個人のメディアファイル、ゲーム、アプリケーション、さらには一部のユーザー設定はそのまま保持されます。

一方、手間をかけずに素早く済ませたいならクリーンインストールがおすすめです。ただし、事前にデータをバックアップしていない場合、OSドライブ上の個人データやカスタマイズしたユーザー設定が失われる点には十分注意してください。

まとめ

Windows 10/11で更新エラー0x800f0845が発生している方は、本記事で紹介した対処法を順番に試してみてください。いずれの方法も効果的で、比較的簡単に実行できます。トラブルシューティングツールやSFC/DISMスキャン、WUコンポーネントのリセット、Updateカタログからの手動インストールなど、ご自身の状況に合った方法でエラーを解消し、快適なWindows環境を取り戻しましょう。

  1. Windows 7 / 8.1 / 10でエラーコード800F0922を修正する9つの方法

    一部のWindowsユーザーから、保留中の更新プログラムをインストールしようとした際にエラーコード800F0922が表示されるという報告が寄せられています。この問題は主にWindows 7やWindows 8.1で発生し、場合によってはWindows 10でも確認されています。このエラーコードについて詳しく調査したところ、複数の原因が考えられることが判明しました。以下に、800F0922エラーが発生することが確認されている主なシナリオをまとめます。Windows Updateの一時的な不具合 – 最も一般的なケースでは、Microsoftも認識している既知の不具合が原因です。この場合、「Win

  2. Windows 10アップデートエラー「0x800707e7」の原因と解決方法を徹底解説

    Windows Updateを実行した際に、更新プロセスが開始されない、または途中のパーセンテージで止まってしまい、アップデートが正常に完了しない――このような症状が現れたとき、エラーコード「0x800707e7」が表示されることがあります。このエラーは機能更新プログラムや品質更新プログラムで発生するほか、Windows 7からのアップグレード時にも報告されています。数多くのエラーレポートを分析した結果、この問題の主な原因として以下の項目が特定されています。インデックスの場所(Indexing Location):多くのWindows更新プログラムは、PCのインデックス場所を含むホスト環境がデ