Windows Updateで累積更新プログラムを適用しようとした際、「0x80070306」が表示されてインストールに失敗したことがあります。再起動しても状況は変わらず、更新履歴には「インストールに失敗しました」とだけ表示される状態でした。
原因は更新コンポーネントの破損とシステムファイルの不整合が原因でした。Windows Updateのトラブルシューティング、DISM、SFCを順番に実行し、SoftwareDistributionフォルダーをリセットすることで解消しました。
本記事では、同じエラーで困っている方向けに、原因と修復手順について解説します。
0x80070306エラーの意味とは
エラーコード「0x80070306」は、Windows内部の処理中に「無効なハンドル」や「アクセスできない状態」が発生した場合に表示されるコードです。Windows Update実行時に表示される場合は、主に以下のいずれかが原因です。
・Windows Update関連サービスの異常
・更新キャッシュの破損
・システムファイルの破損
・累積更新プログラムのダウンロード不良
特にWindows11では、累積更新プログラムの適用時に発生しやすい傾向があります。
主な原因一覧
原因ごとに整理します。
| 原因 | 詳細 | 発生しやすい状況 |
|---|---|---|
| Windows Updateサービスの異常 | 「Windows Update」や「Background Intelligent Transfer Service」が停止・応答なしの状態 | 長時間スリープ後や強制終了後 |
| 更新キャッシュの破損 | C:\Windows\SoftwareDistribution 内の更新データが破損 | 更新途中で電源断があった場合 |
| システムファイルの破損 | OSの重要ファイルが壊れている | 古い環境からのアップグレード直後 |
| 更新プログラムのダウンロード不良 | 累積更新プログラムのファイルが正常に取得できていない | 回線不安定時 |
| セキュリティソフトの干渉 | ウイルス対策ソフトが更新処理をブロック | サードパーティ製セキュリティソフト利用時 |
| ディスク容量不足 | システムドライブ(Cドライブ)の空き容量が不足 | 空き容量が10GB未満 |
更新プログラムが「保留中」のまま進まず困っている場合は、別記事で確認手順と対処法を手順付きでまとめています。あわせて参考にしてください。

修復手順① Windows Updateのトラブルシューティングを実行
まずは標準機能から確認します。
- スタートメニューを開く
- 「設定」をクリック
- 「システム」→「トラブルシューティング」
- 「その他のトラブルシューティング ツール」
- 「Windows Update」を選択して「実行」
表示された指示に従い修復を実行します。軽度の不具合であればこれで解消します。

修復手順② Windows Update関連サービスの確認
サービスが停止している場合は再起動します。
- キーボードで Windowsキー + R
- 「services.msc」と入力してEnter
- 以下のサービスを確認
・Windows Update
・Background Intelligent Transfer Service
状態が「実行中」でない場合は右クリック→「開始」を選択します。既に実行中の場合は「再起動」を選択します。
修復手順③ 更新キャッシュをリセット
キャッシュ破損が疑われる場合はリセットします。
- 管理者としてコマンドプロンプトを起動
- 以下を順番に入力
|
1 2 |
net stop wuauserv net stop bits |
- エクスプローラーで
C:\Windows\SoftwareDistribution
を開く - 中のファイルをすべて削除
- 再びコマンドプロンプトで
|
1 2 |
net start wuauserv net start bits |
その後、再起動して更新を再実行します。
修復手順④ DISMとSFCでシステム修復
システムファイル破損が疑われる場合は以下を実行します。
管理者としてコマンドプロンプトを開き、順番に入力します。
|
1 |
DISM /Online /Cleanup-Image /RestoreHealth |
完了後に
sfc /scannow
修復完了後は必ず再起動してください。
修復手順⑤ 手動で更新プログラムをインストール
どうしても失敗する場合は、Microsoft Update Catalogから該当の更新プログラム(KB番号)を検索し、手動ダウンロードして実行します。
更新履歴から該当のKB番号を確認し、同じ番号を検索してください。
よくある質問(Q & A)
- 何度再起動しても0x80070306が出ます。どうすればいいですか?
-
キャッシュのリセットとDISM/SFCを必ず実行してください。それでも改善しない場合は手動インストールを検討します。
- 更新履歴に「インストールに失敗しました」とだけ表示されます。原因は分かりますか?
-
詳細な原因はイベントビューアーで確認できます。「Windowsログ」→「システム」でエラーを確認してください。
- セキュリティソフトが原因になることはありますか?
-
あります。一時的に無効化して更新を試すことで改善する場合があります。
- Cドライブの空き容量が少ないと0x80070306は発生しますか?
-
はい、発生する可能性があります。Windows11の累積更新プログラムは一時的に数GBの空き容量を必要とします。Cドライブの空き容量が10GB未満の場合は、不要ファイルの削除や「設定」→「システム」→「記憶域」からストレージセンサーを実行し、空き容量を確保してから再度更新を試してください。
- 更新途中で電源を切ってしまいました。その後0x80070306が出ています。どうすればよいですか?
-
更新中の強制終了は更新キャッシュやシステムファイルを破損させる原因になります。まずはSoftwareDistributionフォルダーのリセットを行い、その後DISM /Online /Cleanup-Image /RestoreHealth と sfc /scannow を順番に実行してください。それでも改善しない場合は、該当の更新プログラムを手動でインストールする方法を検討します。
まとめ
Windows Updateで0x80070306が発生する主な原因は、更新キャッシュの破損やシステムファイルの不整合です。まずはトラブルシューティングを実行し、改善しない場合はサービス確認、キャッシュリセット、DISMとSFCを順番に実施してください。それでも解決しない場合は更新プログラムの手動インストールが有効です。焦らず順番に確認することで多くの場合は解消できます。



