Windows 11でSFC /Scannowを正しく実行する方法
簡潔な回答: 管理者としてターミナルを開き順番に実行:まずDISM /Online /Cleanup-Image /RestoreHealth(SFCが参照するコンポーネントストアを修復)、次にsfc /scannow。SFC単独では多くの場合失敗する——ソースファイル自体が破損しているため。SFCが「修復できませんでした」と表示したらCBS.logを確認し、再起動後に再実行、またはインプレース修復アップグレード。
スタート右クリック→ターミナル(管理者)。DISMが先、SFCが後:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
DISMは5-20分、SFCはさらに5-15分。SFC実行中にウィンドウを閉じない。
なぜDISMが先か
以前あるマシンでSFCを先に実行したら3つのDLLを破損コピーで置き換えた。コンポーネントストア(C:\Windows\WinSxS\)が問題の原因である中断されたアップデートと同じ理由で壊れていたのでSFCが壊れたファイルを引っ張ってシステムを「修復」。DISMがMicrosoftからクリーンコピーをダウンロードしてコンポーネントストアを修復。その後SFCが実際に正常なファイルで作業できる。
WinSxSを壊すのはほぼ常にWindows Update中の電源喪失。ノートPCが多い——アップデート中に蓋を閉じるから。飼い猫が24H2インストール中に充電ケーブルを蹴り飛ばした客。バッテリー残量6%。一部のDLLが新バージョン、一部が旧バージョン、いくつかは切り詰められたまま。DISM+SFC 2回実行で修復。
同じマシンが3週間後に別の破損ファイルで戻ってきた。SFCを見るのをやめてドライブを確認——故障しかけのNVMe。毎回異なるファイルの破損が再発するなら、SFC実行をやめて先にドライブの健全性確認。ついでにchkdsk C: /rも実行。
結果の読み方
「整合性違反なし」——クリーン。「正常に修復されました」——再起動。「要求された操作を実行できませんでした」——管理者でないか、services.mscでWindows Modules Installerが無効。
「破損ファイルを見つけましたが修復できませんでした」が怖がらせるもの。これで新しいノートPCを買おうとした客がいた。通常はDISMを先に実行していないか、特定のDLLがWindows使用中でロックされているだけ。セーフモードで起動しsfc /scannow実行——セーフモードでロックファイルの大半が解放。
詳細はC:\Windows\Logs\CBS\CBS.logにあるがメモ帳で開かない——巨大。代わりにfindstr /c:“[SR] Cannot repair” %windir%\Logs\CBS\CBS.logを実行。出力例:
2025-11-14 09:17:22, Info CSI 00000389 [SR] Cannot repair member file [l:22]"mshtml.dll" of Microsoft-Windows-InternetExplorer
2025-11-14 09:17:23, Info CSI 0000038b [SR] Cannot repair member file [l:18]"oleaut32.dll" of Microsoft-Windows-OLE
mshtml.dllはMicrosoftがまだWindows 11に同梱するレガシーInternet Explorerのもの。削除を待ち続けて一向にされない。explorer.exeも頻出——破損システムファイルのマシンでファイルエクスプローラーが応答しなくなるのはこれが理由。oleaut32.dllはCOM/OLEオートメーション処理——クリップボードがこれに依存するので破損するとコピー&ペーストが動かなくなる。ぐちゃぐちゃのドライバ更新後はドライバ関連DLLが出る。
ログで探すのはパターン。1つのアップデートパッケージの数ファイルなら一回限りの中断アップデート——修復可能。毎回スキャンするたびに異なるパッケージのランダムファイルならドライブが劣化中でSFCでは救えない。
セーフモード、オフライン、最終手段
セーフモードでも頑固なファイルが直らない場合、Windows完全外部からSFC実行——Shift押しながら再起動→トラブルシューティング→詳細オプション→コマンドプロンプト→sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows。回復環境ではCとDが入れ替わることがあるのでdir C:\Windowsで先にドライブ文字確認。
インプレースアップグレードが最終手段。Windows 11 ISOをダウンロード→マウント→setup.exe→「個人用ファイルとアプリを引き継ぐ」。全システムファイルを置換しデータは保持、30-60分。3回のDISM+SFCでntdll.dllが直らなかったマシンで結局これをやった。最初からやればよかった。
もう一つ——SFCが破損を見つけて修復してもまた戻る場合、SFC再実行前にマルウェア確認。マルウェアがシステムDLLを改変、SFCが置換、マルウェアが即座に再感染。無限ループ。
メンテナンス
SFCを定期実行しない。診断ツールであってメンテナンスではない。問題がある時に実行——フリーズ、DLLエラー、アップデート失敗、ブルースクリーン。
ただし23H2、24H2など大型半期アップデート後のDISM+SFCは10分の価値あり。数百ファイルが置換される。問題が破損なのか別のことか不明ならリモートで確認してどちらか判断可能。
よくある質問
SFCとDISMはどちらを先に実行すべき?
常にDISMが先。DISMはSFCがクリーンファイルのソースとして使うコンポーネントストア(WinSxS)を修復する。SFCを先に実行してコンポーネントストアが壊れていると、SFCが破損コピーで「修復」して悪化させる。DISM /Online /Cleanup-Image /RestoreHealth完了後にsfc /scannow。
「Windowsリソース保護は破損ファイルを見つけましたが修復できませんでした」の意味は?
SFCが破損システムファイルを検出したが置換できなかった。最も一般的な原因はコンポーネントストア破損——DISM /Online /Cleanup-Image /RestoreHealthを先に実行後SFC再実行。ダメならセーフモードでSFC、次にWindows回復環境から。破損ファイルはC:\Windows\Logs\CBS\CBS.logに記録——findstr /c:"[SR] Cannot repair"でログをフィルタ。
SFC /scannowは安全?
完全に安全。SFCは破損・改変されたシステムファイルをコンポーネントストアの正常コピーで置換するのみ。個人ファイル削除、プログラムアンインストール、設定変更はしない。スキャンは5-15分、終了後は通常通りPC使用可能。唯一の注意はスキャン中断禁止——実行中に再起動やウィンドウを閉じない。
SFC /scannowにかかる時間は?
通常5-15分、ドライブ速度とチェック対象ファイル数による。SSDなら約5分、旧HDDなら約15分。特定のパーセンテージで30分以上止まった場合、頑固なファイルの修復中——1時間までは待つ。DISMはインターネット接続速度により5-20分。
SFC /scannowを定期メンテナンスとして実行すべき?
いいえ。SFCは診断ツールであってメンテナンスツールではない。症状がある時に実行——ランダムクラッシュ、DLLエラー、アプリの突然停止、Windows Update失敗。定期実行はクリーンな結果のスキャンに時間を浪費。例外:大型半期アップデート(23H2、24H2)後のDISM+SFCチェックは10分の価値あり。
DISMも失敗した場合はどうする?
DISM /Online /Cleanup-Image /RestoreHealth失敗は通常Windows Updateサーバーからのダウンロード中断かインターネット接続切れ。安定した接続で再試行。それでも失敗ならWindows 11 ISOをオフラインソースとして使用:ISOをマウントしDISM /Online /Cleanup-Image /RestoreHealth /Source:E:\Sources\install.wim(E:をマウントドライブ文字に置換)。それも失敗ならインプレースアップグレード修復。