Windows 11 24H2「KB5065426」がインストールできない|エラー0x80070306の原因と解決策(2025年9月累積更新)

Windows 11 Version 24H2(x64)で 2025年9月の累積更新プログラム「KB5065426」を適用しようとすると、エラー 0x80070306(The handle is invalid)で途中停止する――そんな相談が急増しています。本稿では原因の考え方から最短で復旧する具体手順、ログの読み方、企業環境での注意点まで、再現性の高い解決策を現場目線で整理します。

目次

症状と前提条件

  • 対象: Windows 11 Version 24H2(x64)
  • 適用対象更新: 2025-09 Cumulative Update KB5065426
  • 発生事象: インストール中に 0x80070306(ハンドルが無効)で停止し、更新が反映されない/ロールバックされる
  • 前提: サードパーティ製ウイルス対策ソフトは未導入

結論(先に要点)

0x80070306 は「ハンドルが無効」を示し、更新コンポーネントのキャッシュ破損・排他制御の行き違い・古いストレージ/ファームウェアによる I/O ロックが主因で起こります。多くの環境では下記の手順2〜4(トラブルシューティング → SFC/DISM → コンポーネント手動リセット)で解決します。改善しない場合は手順5(カタログから手動インストール)、それでも失敗する場合は手順7(インプレース修復)でほぼ確実に適用できます。

エラー 0x80070306 の意味と原因の見立て

0x80070306(ERROR_INVALID_HANDLE)は、更新処理の途中で参照したハンドル(ファイル・サービス・デバイスなど)の正当性が崩れたことを示します。実務で多いのは次のパターンです。

  • SoftwareDistribution / catroot2 に残る破損キャッシュや中断トランザクション
  • フィルタードライバ(古いストレージ/RAID、バックアップ、DLP など)が I/O をロック
  • サービスの再起動タイミングずれ(BITS/WaaSMedicSvc/TrustedInstaller など)
  • システムファイル不整合(WinSxS メタデータ、マニフェストの齟齬)
  • ファームウェア・ストレージドライバの古さに起因する排他制御の不整合

最短で直すための手順(概要表)

手順操作目的 / 目安時間成功の目印
1OS ビルド確認
Win + R → winver または PowerShell で Get-ComputerInfo | Select OsName, OsBuildNumber
既に対象ビルド以上なら再適用は不要。5分更新済みなら本更新は不要
2Windows Update トラブルシューティング
設定 → システム → トラブルシューティング → その他のトラブルシューティング →「Windows Update」
自動修復(サービス・キャッシュ)。5〜10分検出された問題の修正が「完了」
3SFC/DISM で整合性修復
sfc /scannow → 完了後 DISM /Online /Cleanup-Image /RestoreHealth
破損したシステム/更新コンポーネントの修復。20〜40分SFC が「整合性違反は見つかりませんでした」/DISM が「復元処理は正常に完了しました」
4更新コンポーネントの手動リセット(後述スクリプト有)キャッシュの再生成。10分SoftwareDistribution / catroot2 が再生成される
5手動インストール(.msu)
Microsoft Update Catalog で KB5065426(x64/24H2)を取得 → ダブルクリック
WU 経由の不具合を回避。10〜30分「更新プログラムが正常にインストールされました」
6セーフ ブート + ネットワークで更新最小ドライバで衝突回避。15〜30分セーフモードで更新が進む
7インプレース修復(ISO/インストール アシスタント、個人用ファイルとアプリを保持)最終手段。60〜120分更新履歴に KB が登録 / OS 正常起動

ヒント(重要)

  • サードパーティのセキュリティソフトが無くても、古い BIOS/UEFI やストレージドライバ(Intel RST / AMD RAID など)が原因で更新に失敗することがあります。PC/マザーボードメーカーの最新ファームウェア・ドライバへ更新を推奨します。
  • 手順4で生成した SoftwareDistribution.old と catroot2.old は更新後に不要です。容量が気になる場合は手動削除して構いません。

各手順のやり方(詳解)

OS ビルドの確認

  1. Win + R → winver と入力して Enter。
  2. または管理者 PowerShell で次を実行: Get-ComputerInfo | Select OsName, OsVersion, OsBuildNumber
  3. 本 KB が対象のバージョン/ビルド以上であれば、再適用は不要です。

Windows Update トラブルシューティングの実行

設定 → システム → トラブルシューティング → その他のトラブルシューティング →「Windows Update」を実行します。内部的にサービスの再起動やキャッシュ整合性の修復が行われ、軽微な破損はこれだけで解消します。

SFC / DISM による整合性修復

  1. 管理者の PowerShell または CMD を開き、次を順に実行します。 sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth
  2. 完了後に PC を再起動します。
  3. 再度 Windows Update を実行して挙動を確認します。

Windows Update コンポーネントの手動リセット

キャッシュ破損が疑われる場合に有効です。管理者 PowerShell で実行してください。

# 管理者 PowerShell
Stop-Service wuauserv, bits, cryptsvc, msiserver -Force
Rename-Item "$env:windir\SoftwareDistribution" "SoftwareDistribution.old" -ErrorAction SilentlyContinue
Rename-Item "$env:windir\System32\catroot2" "catroot2.old" -ErrorAction SilentlyContinue
Get-BitsTransfer -AllUsers | Remove-BitsTransfer -Confirm:$false
Start-Service msiserver, cryptsvc, bits, wuauserv
# 念のため再起動
shutdown /r /t 0

この後に Windows Update を再実行し、KB5065426 のダウンロードとインストールを試します。

Microsoft Update Catalog から手動インストール

  1. Microsoft Update Catalog で KB5065426 を検索し、Windows 11 Version 24H2(x64)向けの .msu を取得します。
  2. ダウンロードした .msu をダブルクリックして適用、または以下を管理者 CMD で実行します。 wusa "C:\Path\To\Windows11.0-KB5065426-x64.msu" /quiet /norestart
  3. 適用後に再起動し、設定 → Windows Update → 更新の履歴から KB が登録されているか確認します。

補足: 近年の Windows では SSU(サービス スタック更新)は LCU に同梱されています。別途の SSU 適用は通常不要です。

セーフ ブート状態で更新

  1. 設定 → システム → 回復 →「今すぐ再起動」→ トラブルシューティング → 詳細オプション → スタートアップ設定 → 再起動 → 4)セーフモードを有効にする(+ ネットワーク)。
  2. セーフモードでサインイン後、Windows Update または .msu を適用します。

サードパーティドライバや常駐サービスが最低限になるため、更新処理の排他衝突を避けられます。

インプレース修復(上書きアップグレード)

最終手段として有効です。個人用ファイルとアプリを保持したまま、Windows のコアファイルを再配置します。

  1. 公式のインストール アシスタントまたは ISO を用意します。
  2. Windows 上で setup.exe を実行し、「個人用ファイルとアプリを引き継ぐ」を選択します。
  3. セットアップ完了後、Windows Update の履歴と OS ビルドを確認します。

原因切り分けを深める(実務ノウハウ)

ストレージ/ファームウェアの見直し

  • デバイス マネージャー →「記憶域コントローラー」で Intel RST / AMD RAID / サードパーティ NVMe の古いドライバがないか確認。
  • メーカーサイトの 最新 BIOS/UEFI と ストレージドライバへ更新。
  • BitLocker を使用中なら更新前に「一時停止(サスペンド)」してから再試行(再起動後に自動で再開)。

サービス状態の健全性チェック

# 管理者 PowerShell
Get-Service wuauserv,bits,cryptsvc,TrustedInstaller,WaaSMedicSvc | Select Name,Status,StartType

Status が Running、StartType が Manual(または Automatic) になっているかを確認します。停止や無効化のままでは更新が進みません。

WSUS/ポリシーの影響(家庭機でも稀に残存)

中古機や以前ドメイン参加していた PC では、Windows Update のポリシーが残存していることがあります。以下のレジストリ値が構成されていないか確認してください(存在すれば「未構成」に戻す)。

# 参考パス(編集は自己責任)
HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU

ディスク空き容量・一時ファイル

  • システムドライブに 20GB 以上の空きがあるか確認。足りない場合はストレージセンサーでクリーンアップ。
  • 手順4で作成した .old フォルダは更新確認後に削除してよい。

ログで「なぜ止まったか」を見抜く

繰り返し失敗する場合はログ解析が早道です。以下を押さえれば現場で十分戦えます。

ログ/場所見るポイント典型的な所見
イベント ビューアー
Applications and Services Logs → Microsoft → Windows → WindowsUpdateClient → Operational
該当時刻のエラー/警告。KB 番号、状態コード。0x80070306 とともに「ダウンロード済み・インストール中断」などの遷移が出る。
C:\Windows\Logs\CBS\CBS.log「Failed」、「corrupt」、「Cannot open package」など。マニフェスト不整合、排他ロック、アクセス拒否。
C:\Windows\Logs\DISM\dism.logRestoreHealth の結果やエラーコード。コンポーネントストア修復の成否が分かる。
C:\Windows\SoftwareDistribution\ReportingEvents.log更新の開始/中断/ロールバックの追跡。特定フェーズでの恒常的な失敗が把握できる。
Get-WindowsUpdateLog(PowerShell)ETL を統合して Desktop\WindowsUpdate.log を生成。詳細なクライアント動作のタイムラインを取得。
# PowerShell: Windows Update クライアントログを生成
Get-WindowsUpdateLog -LogPath "$env:USERPROFILE\Desktop\WindowsUpdate.log"

手動インストール時のつまずきと対処

  • 適用対象外メッセージ:アーキテクチャ(x64)やバージョン(24H2)を誤っていないか再確認します。
  • 途中で固まる:BitLocker 一時停止、クリーンブート(セーフモード)、ストレージドライバ更新を試します。
  • 何度もロールバック:SFC/DISM で整合性が直らない場合、インプレース修復へ。

ロールバック・起動ループからの復旧

  1. 「更新を元に戻しています」で繰り返す場合は、WinRE(自動修復)からシステムの復元を先に試行。
  2. 復旧後、手順3(SFC/DISM)→ 手順4(コンポーネントリセット)→ 手順5(手動インストール)の順で再アプローチ。

企業・管理環境(WSUS / Intune / 構成プロファイル)の注意点

  • リング設定(先進運用リング)や期限設定、保留中の再起動ポリシーがブロックになっていないか。
  • 配布コンテンツ(DP/キャッシュ)が破損している場合、クライアントキャッシュのクリアや再配布が必要。
  • 共同で導入している EDR/バックアップのフィルタードライバがある場合はメンテナンスウィンドウ中に一時停止。

再発防止の小ワザ

  • ストレージの健全性:chkdsk /scan、メーカー提供の NVMe/S.M.A.R.T. ユーティリティで定期チェック。
  • 空き容量の確保:ストレージ センサー(自動クリーンアップ)を有効化しておく。
  • ドライバ更新:ストレージ/チップセット/BIOS を四半期に一度は点検。
  • 更新の分離:大型の機能更新とドライバ更新は同時に走らせない(再起動サイクルが衝突しやすい)。

コピペで使えるコマンド集

整合性修復

sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

更新コンポーネント リセット(PowerShell)

Stop-Service wuauserv, bits, cryptsvc, msiserver -Force
Rename-Item "$env:windir\SoftwareDistribution" "SoftwareDistribution.old" -ErrorAction SilentlyContinue
Rename-Item "$env:windir\System32\catroot2" "catroot2.old" -ErrorAction SilentlyContinue
Get-BitsTransfer -AllUsers | Remove-BitsTransfer -Confirm:$false
Start-Service msiserver, cryptsvc, bits, wuauserv

インストールの有無を確認

wmic qfe | find "KB5065426"
# または
Get-HotFix -Id KB5065426
# または(パッケージレベル)
dism /Online /Get-Packages | findstr 5065426

よくある質問(FAQ)

Q. 手順 2〜4 で直りません。次は何をすべき?

カタログからの .msu 手動適用(手順5)を優先。失敗する場合はセーフモードで適用し、それでもダメならインプレース修復が近道です。

Q. インプレース修復でデータは消える?

個人用ファイルとアプリを保持を選べば消えません。念のためバックアップは推奨します。

Q. 「ハンドルが無効」の直接原因は?

更新処理が参照するファイル/サービス/デバイスのハンドルが無効化された状態です。典型的にはキャッシュ破損、フィルタードライバの介在、サービス再起動の競合が引き金です。

Q. セキュリティソフトは入れていませんが影響は?

影響は小さいですが、古いストレージ/RAID ドライバや BIOSがボトルネックになる例は多いです。先に更新を。

まとめ

エラー 0x80070306 は「ハンドルが無効」を意味し、原因の大半は更新キャッシュの破損や排他制御の行き違いです。実務では トラブルシューティング → SFC/DISM → コンポーネントリセットの三点セットで解決するケースが最も多く、難航した場合も .msu 手動適用かインプレース修復で収束します。加えてBIOS/ストレージドライバの更新を行えば再発確率を大きく減らせます。更新が完了したら SoftwareDistribution.old と catroot2.old を削除し、ディスクを整えておきましょう。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次