Windows Updateを実行中に「0x800f0845」というエラーコードが表示され、更新が途中で止まってしまうケースは少なくありません。このエラーはシステムファイルの破損や更新プログラムとの不整合など、複数の要因によって引き起こされます。放置するとセキュリティリスクや動作不安定につながるため、早めの対処が重要です。IObitの本記事では、0x800f0845エラーの原因と解決方法をわかりやすく解説します。

「0x800f0845」エラーが発生する原因

0x800f0845エラーが起こる要因は複数あります。代表的なものは以下の通りです。

1. システムファイルの破損または欠落

Windowsの動作に必要な基本的なシステムファイルが破損している場合、更新プログラムが正常にインストールできません。

2. Windowsコンポーネントやサービスの破損

Windows Updateに関連するコンポーネントやサービスが破損していると、更新プロセスが中断されます。

3. ウイルス対策ソフトの干渉

一部のウイルス対策ソフトがWindows Updateの動作を妨げることがあります。特に、リアルタイム保護機能が更新ファイルをブロックする場合があります。

4. サードパーティアプリとの競合

インストールされているソフトウェアがWindowsの更新プロセスと競合する場合があります。

5. 仮想環境での互換性問題

MacのParallels DesktopでWindows 11を使用している場合、ARM版Windows 11で特にこのエラーが発生しやすいことが報告されています。

「0x800f0845」エラーが発生する時の対処法

対処法1:Windows Updateトラブルシューティングツールを実行

1. [Windowsキー] + [I] を押して「設定」を開きます

2. 更新とセキュリティを選択、左メニューから「トラブルシューティング」を選びます。

3. 「追加のトラブルシューティング ツール」をクリックします。

4. 「Windows Update」を選択して「トラブルシューティングツールの実行」をクリックします。

5. ツールが自動的に問題を検出し、解決策を適用してくれます。

6. 画面の指示に従い、問題が検出されたら「この修正を適用します」を選択

7. 完了後、コンピューターを再起動

対処法2.PowerShellで.NET Frameworkをインストールする

Windows Updateエラー 0x800f0845 の原因のひとつに、破損したシステムファイルや欠落したコンポーネントがあります。

その場合、SFC(システムファイルチェッカー) と DISM(展開イメージのサービスと管理) コマンドで修復を行うことが効果的です。

1. [Windowsキー]を押し、検索バーに「cmd」と入力

2. 「コマンドプロンプト」を右クリック → 「管理者として実行」

3. 以下を入力して [Enter] を押します:

  • sfc /scannow

4. システム全体のファイルをスキャンし、破損ファイルがあれば自動的に修復します。

完了には数分かかる場合があります。

5. もしSFCで修復できなかった場合、DISMを使用します:

  • DISM /Online /Cleanup-Image /CheckHealth

    DISM /Online /Cleanup-Image /ScanHealth

    DISM /Online /Cleanup-Image /RestoreHealth

Windowsイメージの破損を検出し、必要に応じて修復を行います。

ネットワーク接続が必要になる場合があります。

対処法3.Windows Updateコンポーネントのリセット

Windows Updateエラー 0x800f0845 の原因の一つに、更新コンポーネントの破損やキャッシュの不具合があります。その場合は、手動でコンポーネントをリセットすることで解決できる可能性があります。

1. コマンドプロンプトを管理者として起動:

[Windowsキー] を押して「cmd」と入力

「コマンドプロンプト」を右クリック → 管理者として実行

2. Windows Updateサービスを停止:

以下のコマンドを順に入力し、各行ごとに [Enter] を押します:

  • net stop wuauserv

    net stop cryptSvc

    net stop bits

    net stop msiserver

これにより、Windows Update関連サービスが停止します。

3. キャッシュフォルダーをリネーム:

更新キャッシュをリセットするため、SoftwareDistribution と Catroot2 フォルダーの名前を変更します。

  • ren C:\Windows\SoftwareDistribution SoftwareDistribution.old

    ren C:\Windows\System32\catroot2 Catroot2.old

4. 停止したサービスを再び起動します:

  • net start wuauserv

    net start cryptSvc

    net start bits

    net start msiserver

5. PCを再起動:

再起動後、Windows Updateを再度実行して、エラーが解消されたか確認します。

対処法4.セキュリティソフトを一時的に無効化

サードパーティ製のウイルス対策ソフトやファイアウォールは、Windows Updateの通信やファイル更新を妨げる場合があります。エラー 0x800f0845 が繰り返し発生する際には、セキュリティソフトを一時的に無効化してから更新を試すと改善することがあります。

1. 画面右下の通知領域(タスクトレイ)にあるアイコンを右クリック、「コントロールパネルを開く」や「設定」を選択

2. 「保護の無効化」「一時停止」などの項目を探して選択します。

無効化の時間を「10分」「再起動まで」などに設定可能な場合は、短時間に設定

3. ウイルス対策を停止している間に Windows Update を再試行して、更新が正常に完了するか確認

4. 更新が完了したら、必ずウイルス対策ソフトを再度有効に戻す

対処法5.Windows Updateを手動でダウンロードする

自動更新で「0x800f0845」エラーが発生する場合でも、更新プログラムを 手動でダウンロード・インストール することで問題を回避できるケースがあります。Microsoft公式サイトから対象の更新プログラムを直接取得する方法をご紹介します。

1. 更新プログラムの番号を確認する:Windows Updateの履歴やエラー画面に表示される「KB○○○○○」という番号をメモします。

2. ブラウザで Microsoft Update カタログを開きます。

3. 検索欄に「KB番号(例:KB5006670)」を入力し、該当する更新プログラムを探します。

4. ご利用の環境(Windows 10/11、64bit/ARM64 など)に合う更新プログラムを選び、ダウンロードします。

5. ダウンロードした .msu ファイルをダブルクリックして実行し、画面の指示に従ってインストールします。

6. インストール完了後、PCを再起動し、更新が正常に反映されているか確認します。

対処法6.クリーンブート環境での更新

「0x800f0845」エラーは、常駐ソフトやサービスが Windows Update と干渉して発生するケースがあります。その場合は クリーンブート を実行し、不要なサービスを停止した状態で更新を試すと解決につながることがあります。

1. Windows キー + R を押し、「msconfig」と入力して Enter。

2. 「サービス」タブを開き、「Microsoft のサービスをすべて隠す」にチェック。

3. 一覧に残ったサービスをすべて無効化します。

4. 「スタートアップ」タブで「タスクマネージャーを開く」を選択。

5. 不要なアプリを右クリックして「無効化」。

6. 最小限のサービスのみで起動した「クリーンブート環境」となります。

7. この状態で Windows Update を再度実行してください。

更新が完了したら、再度「msconfig」を開き、無効化したサービスやスタートアップを有効化して通常環境に戻します。

まとめ

0x800f0845エラーは様々な原因で発生しますが、上記の対処法を順番に試すことで多くの場合解決できます。特にWindows Updateトラブルシューティングツールとシステムファイルの修復は高い効果が期待できます。

重要なデータがある場合は、対処法を実行する前に必ずバックアップを取ることをお勧めします。また、自力での解決が困難な場合は、専門業者への相談も検討してください。