「sfc /scannow」がエラーとなり、「dism実行」でも、ソースファイルが見つからないエラー(0x800f081f)となる」場合の対処方法は?

【投稿者コメント】(追記に付き再掲載)


【キーワード】

[sfcとdismNG]、[dismのソースを他]、[PCのWindowに]


【件名】

「「sfc /scannow」がエラーとなり、「dism実行」でも、ソースファイルが見つからないエラー(0x800f081f)となる」場合の対処方法は?」


【投稿本文】


【1】「sfc /scannow」でも、「dism実行」でもエラーで万事休す!(添付図1の左図参照)

 

 添付図1の左図に示すように、「sfc /scannow」でも、「DISM.exe /Online /Cleanupーimage /Restorehealth」でもエラーとなり、万事休すだ。

 程度の悪いエラーだが、この原因となるPC操作は思い当たらず、突然の不具合だ!


【2】「dism実行」のエラー:「ソースファイルが見つからない」を改修するには、dismのソースを指定してみるしかない


 こうなったら、「dism実行」のエラーを修復するには、「ソースファイルが見つからない」と云うエラーゆえ、オーソドックスな、本来的な対応なら、dismのソースを指定してみる事が試せるだろう。

【例】
DISM /Online /Cleanup-Image /RestoreHealth /source:WIM:D:\Sources\Install.wim:1 /LimitAccess


【3】dismのソースをそろえるのは煩雑!


 そこで、このソースのInstall.wimの入手方法だが、

【ソースを指定してDISMコマンドを実行する手順】(2024年4月17日追記)

①OSイメージの入手

マイクロソフト公式サイトから OSイメージを入手する

添付図2の通り、
https://www.microsoft.com/ja-jp/software-download/windows11
のサイトの
「Windows11ディスクイメージ(ISO)をダウンロードする」項目の
[Windows 11 (multi-editiom ISO)]ボタンをクリックして、
[64-bit ダウンロード]ボタンをクリックして、
デスクトップ等へ Win11_23H2_Japanese_x64v2.iso をダウンロードする。(2024年4月17日時点)

②OSイメージからinstall.wimのフォルダを確認する
添付図3~添付図5の通り、
・ダウンロードしたisoファイルを右クリックして「マウント」を選択すると、新たにドライブレターが割り当てられたCCCOMA_X64FRE_JA-JP_DV9というディレクトリが開かれて、Hドライブがマウントした仮想ドライブになるとする。
・すると、修復に使うファイルの材料であるinstall.wimの場所は、
【install.wimの場所】
H:\sources\install.wim

③ダウンロードしたisoファイルからinstall.wimを抽出

添付図6の通り、
・Dism /Get-WimInfo /Wimfile:H:\sources\install.wim
のコマンドで、install.wimの中にあるイメージのエディションのインデックス番号を確認する
・1~3のインデックスでHome / Education / Proが割り当てられている
・修復対象のOSのエディションに合ったインデックスを覚えておく
・今回はProが修復対象で、Proのインデックス番号が3だったとする。
添付図7の通り、
・インデックスを確認したら次のコマンドを打つ。
Dism /Export-Image /SourceImageFile:H:\sources\install.wim /SourceIndex:3 /DestinationImageFile:C:\install.wim /Compress:max /CheckIntegrity
 このコマンドのSourceIndex:3の部分に先ほど確認したインデックス番号を入力している。
・この処理には少し時間が掛かり、処理が終わったらCドライブ直下にinstall.wimが出来上がっている。

④ソースにinstall.wimを指定してDISMコマンドを打つ
添付図8の通り、
DISM /Online /Cleanup-Image /RestoreHealth /source:WIM:H:\Sources\Install.wim:3 /LimitAccess
のコマンドで、DISMコマンドの復元操作は正常完了する。

 ・・・等々、少し煩雑で、手間暇が掛かり、少々、面倒だ!


【4】DISMコマンドのソースとして他PCのWindowsフォルダを指定する(添付図1右図参照)


 そこで、ソースとするファイルとして、もう1台の正常なPCのWindows 11のWindowsフォルダを使えないのだろうか?と云う考えが浮かぶ。

 ここで、もう1台のPCの「Surface Pro 3」の「Windows11」が、ほぼ素のまま正常に動いているので、これを使ってみる。(勿論、①「sfc /scannow」も②「DISM.exe /Online /Cleanupーimage /Restorehealth」も③「CHKDSK c: /f」も全て正常終了する!)

①まず、もう1台のPCの「Surface Pro 3」の「Windowsディレクトリ」の「ネットワーク共有設定」を行う。
・「"c:\Windows"フォルダ」を「読み取り専用で共有」とする。

②このフォルダをエラーの生じているPCで開いて、修復用イメージ(Source)として使ってみる。
 もう1台のPCの「Surface Pro 3」の「Windowsフォルダのパス」を"\\SURFACE-PRO\Windows"とした場合に、次の様なコマンドを打ってみる。

"dism.exe /online /cleanup-image /restorehealth /Source:\\SURFACE-PRO\Windows"

③すると正常に完了する。

④そのまま続けてシステムファイルチェッカー sfc /scannow を行ってみると、今度は、"正常に修復されました"となる。

⑤本当に直ったのかを確認する為に、PC再起動後に、もう一度システムファイルチェッカーを動かすと、エラーは検出されずに、修復が完了する。

⑥もう1台の、正常なPCの「Windowsフォルダの共有」を解除する。


【5】「dism実行」の、「ソースファイルが見つからないと云うエラー(0x800f081f)」の原因は?


 「dism実行」のエラー(0x800f081f)」は、「修復に必要なソースファイルが見当たらない」と云うエラーだ。

 修復の原本となるソースファイルをPCユーザの操作で削除する事は考えられないので、原因は、つい最近のWindows Updateだろう?

 つい最近のWindows Updateと云えば、2024年4月10日配布の「Windows 11 Version 23H2 の累積更新プログラム(KB5036893)」になる!

 上記【4】項のもう1台のPCでは、「dism実行」のエラー(0x800f081f)」は起きていないから、「累積更新プログラム(KB5036893)」を適用してもエラーとなる条件があるようだ。

 同じWindows Updateの累積修正パッチを適用してもエラーとなる場合とエラーにならない場合とに分かれると云う状況では、毎月、5~8GBも適用する"累積"パッチの意味合いが無い! 通信リソースのムダ遣いだ!

 最近のWindows Updateは不安定で、いつ、何時、深刻バグの被害を受けるかも知れず、1台のPCでは不安であり、WindowsOSのVersion/Revisionを揃えた、もう1台の控えの補完PCが必要だ!

 一見、Version/Revisionを揃えたPCを2台も使うのは、無駄な様に視えても、今回の様に、もう1台控えのPCがあれば、上記の【4】項の正常なソースファイルとして使えて修復も出来てしまう!