WinREが7月修正版かreagentcで確認する方法|KB5101719・KB5099551対応

WinREに2026年7月のSafe OS Dynamic Updateが入ったか確認するとき、reagentc /infoで「Enabled」と表示されるだけでは不十分です。reagentc /infoで現在使用中のWinREの場所を特定し、そこにあるwinre.wimをDISMで調べます。

判定基準は、Windows 11 24H2/25H2が10.0.26100.8875、23H2が10.0.22621.7376です。Microsoftも、このWinREバージョンとの照合をKB5101719およびKB5099551の導入確認方法として示しています。(マイクロソフトサポート)

目次

結論:reagentcだけではWinREの版数まで分からない

確認作業は、次の3段階で進めます。

  1. Windows 11が23H2、24H2、25H2のどれか確認する
  2. reagentc /infoでWinREの有効状態と保存場所を確認する
  3. DISMでwinre.wimのバージョンを取得し、KBの目標値と照合する

reagentc /infoは、Windows REの現在の状態や回復イメージの情報を表示するコマンドです。ただし、7月修正版の判定に必要なWinREの詳細なバージョン番号は表示しません。(Microsoft Learn)

そのため、次の表示だけでは更新済みとは判断できません。

Windows RE status: Enabled
REAGENTC.EXE: Operation Successful.

それぞれの意味は次のとおりです。

表示内容分かること分からないこと
Windows RE status: EnabledWinREが有効になっている7月修正版かどうか
Windows RE location現在登録されているWinREの場所winre.wimの版数
Operation Successfulreagentcコマンドが正常終了したSafe OS更新の導入状況

最終判定に使うのは、現在登録されているwinre.wimのバージョンです。

WinREが7月修正版か確認するための判定基準

Microsoftが2026年7月14日付のSafe OS Dynamic Updateで示している目標値は、次のとおりです。(マイクロソフトサポート)

Windows 11のバージョン対象KB更新後のWinREバージョン
25H2KB510171910.0.26100.8875
24H2KB510171910.0.26100.8875
23H2KB509955110.0.22621.7376

23H2では、通常のWindows OSビルドとWinREの系列が異なって見えることがあります。Windows 11 23H2の確認中に10.0.22621.xと表示されても、それだけで誤ったWinREとは判断できません。KB5099551が示す正式な目標値は10.0.22621.7376です。

同様に、25H2についても、Windows本体のビルド番号ではなく、KB5101719に記載されたWinREの目標値10.0.26100.8875を基準にします。

reagentcとDISMでWinREのバージョンを確認する手順

Windows 11のバージョンを確認する

最初に、対象PCが23H2、24H2、25H2のどれに該当するか確認します。

Windowsキー + Rを押し、次のコマンドを実行します。

winver

PowerShellで確認する場合は、次のコマンドも利用できます。

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' |
    Select-Object DisplayVersion, CurrentBuild, UBR

表示されたDisplayVersionに応じて、比較するKBと目標値を選びます。

管理者としてコマンドプロンプトを開く

スタートメニューで「cmd」と検索し、「コマンドプロンプト」を右クリックして「管理者として実行」を選択します。

DISMはWindowsイメージを参照するため、管理者権限で実行する必要があります。(Microsoft Learn)

reagentc /infoでWinREの場所を確認する

次のコマンドを実行します。

reagentc /info

確認するのは、次の2項目です。

Windows RE status:         Enabled
Windows RE location:       \\?\GLOBALROOT\device\harddisk0\partition5\Recovery\WindowsRE

日本語環境では、項目名の一部が「Windows RE の場所」と表示される場合があります。

Windows RE locationの右側に表示されたパスを、末尾までコピーしてください。ディスク番号やパーティション番号はPCごとに異なります。Microsoftの確認手順でも、reagentc /infoでこの場所を特定してからDISMを実行する流れが示されています。(マイクロソフトサポート)

確認だけであれば、回復パーティションにドライブ文字を割り当てる必要はありません。また、reagentc /disablereagentc /enableを実行する必要もありません。

DISMでwinre.wimの情報を取得する

先ほど確認した場所の末尾に\winre.wimを追加し、次の形式で実行します。

Dism /English /Get-ImageInfo /ImageFile:"Windows RE location\winre.wim" /Index:1

たとえば、reagentc /infoで次の場所が表示された場合、

\\?\GLOBALROOT\device\harddisk0\partition5\Recovery\WindowsRE

実行するコマンドは次のようになります。

Dism /English /Get-ImageInfo /ImageFile:"\\?\GLOBALROOT\device\harddisk0\partition5\Recovery\WindowsRE\winre.wim" /Index:1

Microsoftの公式手順でも、reagentc /infoで取得したパスを/ImageFileに指定し、/Index:1でWinREイメージを確認しています。標準的なファイル名はwinre.wim、インデックスは1ですが、カスタマイズされた環境では異なる場合があります。(マイクロソフトサポート)

/Englishは、DISMの出力項目を英語に統一するためのオプションです。複数言語のPCをスクリプトで一括確認するときに、項目名の違いによる解析失敗を減らせます。(Microsoft Learn)

DISMの結果からWinREバージョンを読み取る方法

DISMの結果では、WinREのバージョンが次のように2つの項目へ分かれて表示されます。

Version : 10.0.26100
ServicePack Build : 8875

この場合、2つを組み合わせた次の値がWinREバージョンです。

10.0.26100.8875

23H2で次のように表示された場合、

Version : 10.0.22621
ServicePack Build : 7376

WinREバージョンは次のとおりです。

10.0.22621.7376

Microsoftの掲載例でも、VersionServicePack Buildを組み合わせて、10.0.22621.4742のような完全なWinREバージョンを判定しています。

DISMツール自体のバージョンと間違えない

DISMの出力上部には、次のようにDISMツール自体のバージョンも表示されます。

Deployment Image Servicing and Management tool
Version: 10.0.26100.xxxx

これはWinREのバージョンではありません。

確認するのは、出力の中ほどにあるイメージ詳細の次の項目です。

Version
ServicePack Build

上部の「DISMツールのVersion」だけを管理台帳へ登録すると、7月修正版が未導入でも更新済みと誤判定する可能性があります。

WinREバージョンの判定方法

取得した値は、次の基準で判定します。

確認結果判定
24H2/25H2で10.0.26100.8875KB5101719の7月版と一致
23H2で10.0.22621.7376KB5099551の7月版と一致
同じ系列で末尾が目標値より小さい7月版未満
同じ系列で末尾が目標値より大きい後続のSafe OS更新が導入された可能性
OSとWinREの系列が一致しない構成不整合や誤ったイメージを要確認
バージョンを取得できないWinREの場所、ファイル、インデックスを要確認

たとえば、24H2で10.0.26100.8800だった場合、8875へ達していないため7月修正版とは判定しません。

後日、同じ系列のより新しいSafe OS更新が公開され、10.0.26100.9000のような値になった場合は、7月版へ戻す必要はありません。最新KBの目標値を確認し、後続版として管理します。KB5101719とKB5099551は適用後にWindowsイメージから削除できない更新として案内されているため、安易なロールバックは避けるべきです。(マイクロソフトサポート)

WinREAgentのイベントでも更新結果を確認できる

Windows Update経由でWinREが更新された場合は、イベントビューアーも確認材料になります。

  1. スタートメニューで「イベントビューアー」を開く
  2. 「Windowsログ」から「システム」を開く
  3. 右側の「検索」を選択する
  4. WinREAgentを検索する
  5. イベントID 4501のServicing succeededイベントを確認する

正常に更新されたイベントには、次のようなメッセージとWinREバージョンが記録されます。

Servicing succeeded.
The Windows Recovery Environment version is now: 10.0.xxxxx.xxxx

Microsoftは、Windows UpdateによるWinRE更新についてイベントID 4501を確認方法の一つとして示しています。一方、DISMで手動適用した場合や、イベントがログ保持期間を過ぎている場合は、winre.wimをDISMで直接確認する方法が推奨されています。(マイクロソフトサポート)

イベントログは「更新処理が成功したこと」の確認に向いていますが、現在登録されているWinREの最終状態を調べる場合は、reagentc /infoとDISMの組み合わせが確実です。

管理インベントリ用にWinREバージョンを取得するPowerShell

複数のPCを管理する場合は、OSのバージョン、WinREの場所、実際のWinREバージョン、目標値、判定結果を同じレコードに保存します。

以下は、Microsoft公式のDISM確認方法を管理インベントリ向けに整理した例です。

# 管理者またはSYSTEM権限で実行
$ErrorActionPreference = 'Stop'

$cv = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'
$displayVersion = [string]$cv.DisplayVersion

$targetText = @{
    '23H2' = '10.0.22621.7376'
    '24H2' = '10.0.26100.8875'
    '25H2' = '10.0.26100.8875'
}[$displayVersion]

$kb = @{
    '23H2' = 'KB5099551'
    '24H2' = 'KB5101719'
    '25H2' = 'KB5101719'
}[$displayVersion]

# reagentcの出力を取得
$reagentText = (& reagentc.exe /info 2>&1 | Out-String)

$winreStatus = if (
    $reagentText -match '(?im)Windows RE status\s*:\s*Enabled'
) {
    'Enabled'
} elseif (
    $reagentText -match '(?im)Windows RE status\s*:\s*Disabled'
) {
    'Disabled'
} else {
    'Unknown'
}

# 表示言語に依存せず、GLOBALROOT形式のパスを抽出
$locationMatch = [regex]::Match(
    $reagentText,
    '\\\\\?\\[^\r\n]+?\\Recovery\\WindowsRE',
    [System.Text.RegularExpressions.RegexOptions]::IgnoreCase
)

if (-not $locationMatch.Success) {
    throw 'reagentc /infoからWindows RE locationを取得できません。'
}

$winreLocation = $locationMatch.Value.Trim()
$winreWim = "$winreLocation\winre.wim"

# /EnglishでDISMの項目名を固定
$dismText = (
    & dism.exe /English /Get-ImageInfo "/ImageFile:$winreWim" /Index:1 2>&1 |
        Out-String
)

$dismExitCode = $LASTEXITCODE

if ($dismExitCode -ne 0) {
    throw "DISMの実行に失敗しました。ExitCode=$dismExitCode`n$dismText"
}

# DISMツールのVersionではなく、イメージ詳細の3桁版数を取得
$baseMatch = [regex]::Match(
    $dismText,
    '(?m)^\s*Version\s*:\s*(\d+\.\d+\.\d+)\s*$'
)

$servicePackMatch = [regex]::Match(
    $dismText,
    '(?m)^\s*ServicePack Build\s*:\s*(\d+)\s*$'
)

if (-not $baseMatch.Success -or -not $servicePackMatch.Success) {
    throw 'DISMの出力からWinREバージョンを取得できません。'
}

$winreVersionText = '{0}.{1}' -f `
    $baseMatch.Groups[1].Value,
    $servicePackMatch.Groups[1].Value

$winreVersion = [version]$winreVersionText
$targetVersion = if ($targetText) {
    [version]$targetText
} else {
    $null
}

$result = if ($null -eq $targetVersion) {
    '対象外または基準未定義'
} elseif (
    $winreVersion.Major -ne $targetVersion.Major -or
    $winreVersion.Minor -ne $targetVersion.Minor -or
    $winreVersion.Build -ne $targetVersion.Build
) {
    'WinRE系列不一致・要確認'
} elseif ($winreVersion.Revision -eq $targetVersion.Revision) {
    '2026年7月版と一致'
} elseif ($winreVersion.Revision -gt $targetVersion.Revision) {
    '同系列の後続版'
} else {
    '2026年7月版未満'
}

[pscustomobject]@{
    ComputerName     = $env:COMPUTERNAME
    OSDisplayVersion = $displayVersion
    OSBuild           = "$($cv.CurrentBuild).$($cv.UBR)"
    TargetKB          = $kb
    WinREStatus       = $winreStatus
    WinRELocation     = $winreLocation
    WinREVersion      = $winreVersionText
    TargetVersion     = $targetText
    Result            = $result
}

このスクリプトでは、単純にバージョン全体の大小だけを比較せず、10.0.2262110.0.26100という系列も確認しています。

たとえば、23H2端末で誤って10.0.26100.xが取得された場合、数値としては目標値より大きくても「更新済み」とせず、「系列不一致・要確認」と判定します。

Microsoftが掲載しているGetWinReVersion.ps1はWinREイメージをマウントして調べる方式ですが、掲載例では4890のように末尾のServicePack Buildだけが表示されます。管理インベントリでは、DISMのVersionServicePack Buildを取得して完全な版数にする方が、OS系列との照合やCSV集計に適しています。(マイクロソフトサポート)

確認時に起こりやすい失敗

症状主な確認ポイント
Windows RE status: Disabled更新版数以前に、WinREが無効になっている原因を確認する
Windows RE locationが空欄WinREイメージの登録状態やファイルの存在を確認する
DISMでファイルが見つからないパスの転記、winre.wimの名前、インデックス番号を確認する
DISMでアクセス拒否になる管理者として実行しているか確認する
すべての端末が同じWinRE版になるDISMツール自体のVersionを収集していないか確認する
23H2で22621が表示されるKB5099551の目標値も22621.7376であり、表示だけで異常と判断しない
後続版が未準拠になる完全一致だけでなく、同一系列の後続版を区別する

Windows RE status: Disabledや場所が空欄の場合は、「7月版未導入」と単純に処理するより、「WinRE構成を確認できない端末」として別管理する方が適切です。

無効状態のままでは、障害時に詳細スタートアップや回復機能を利用できない可能性があるため、更新準拠とは別にWinRE構成の修復が必要です。

7月修正版へ達していない場合の対応

Microsoft公式ページでは、KB5101719とKB5099551について、Windows Updateからの自動配信とMicrosoft Update Catalogからのスタンドアロンパッケージ提供が案内されています。一方、Windows Server Update Servicesは利用不可と記載されています。(マイクロソフトサポート)

未達だった場合は、次の順序で対応します。

  1. 「設定」から「Windows Update」を開く
  2. 更新プログラムのチェックを実行する
  3. 組織管理端末では、実際に利用している更新チャネルを確認する
  4. 必要に応じてMicrosoft Update Catalogのパッケージを検討する
  5. 更新後、reagentc /infoとDISMを再実行する

Safe OS更新を手動でWinREへ組み込む場合は、通常のMSUをWindows本体へ実行するだけでなく、Microsoftが示すWinREイメージへの更新手順に従う必要があります。WinREのマウント、パッケージ適用、コミット、BitLockerまたはデバイス暗号化を考慮した再登録などが含まれるため、回復パーティションを独自手順で直接編集するのは避けてください。(Microsoft Learn)

KB5101719とKB5099551自体については、前提条件はなく、適用後の再起動も不要と案内されています。ただし、同時に別のWindows更新が入った場合は、その更新によって再起動を求められることがあります。(マイクロソフトサポート)

まとめ

WinREが2026年7月修正版か確認するには、reagentc /infoだけで判定せず、次の順序で確認します。

  1. winverなどで23H2、24H2、25H2を特定する
  2. reagentc /infoでWinREがEnabledか確認する
  3. Windows RE locationを取得する
  4. DISMでwinre.wimVersionServicePack Buildを確認する
  5. KB5101719またはKB5099551の目標値と照合する

現在の判定基準は、24H2/25H2が10.0.26100.8875、23H2が10.0.22621.7376です。

端末管理では、OSバージョン、WinREの有効状態、場所、実際の版数、目標版数を同じインベントリに保存します。これにより、「WinREは有効だが古い」「場所が取得できない」「後続版が導入されている」といった状態を正しく切り分けられます。

この記事を書いた人

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

コメント

コメントする

目次