Windows7 SFCコマンドで破損したファイルを手動で修復する方法
SFCコマンドで破損したファイルを手動で修復する方法
コマンドプロンプト(管理者)より
sfc /scannow
実行
SFC(システムファイルチェッカー)を実行し結果が
Windows リソース保護は、破損したファイルを検出しましたが
その一部を修正できませんでした。
詳細は CBS.Log (C:\Windows\Logs\CBS\CBS.log) ~
と表示される場合の修復方法です。
1.CBS.log(ログファイル)からテキスト形式にデータを抽出する
同じくコマンドプロンプトにて下記コマンドを実行するfindstr /c:"[SR]" C:Windows\Logs\CBS\CBS.log >C:\sfclog.txt"
C:\ 直下に sfclog というテキストファイルが生成されます。
2.エラーのログを確認する
sfclog.txt を開きログをチェックします。Cannot repair member file ~~~~ *****.dll
(*=修復できなかったファイル名、dllとも限らない)
などの問題となる、ファイルを確認します。
3.対象のファイルの所有権を取得します。
以下のコマンドを実行takeown /f C:\Windows\System32\*****.dll
4.対象のファイルにフルアクセスを付与します。
以下のコマンドを実行icacls C:\Windows\System32\*****.dll /GRANT ADMINISTRATORS:F
5.正常なファイルを同じバージョンのWindowsよりコピーします。
※USBメモリなどを使用し、ふつうにファイルのコピーで問題ないです。6.正常なファイルに置き換えます。
ファイルをコピーした USBメモリ を取り付け(X:\とします)以下コマンドを実行
copy x:\*****.dll C:\Windows\System32\
上書きしますか?(Y)
※事前にリネームしてバックアップしておくのも良いです。
7.再起動して、再度 SFC を実施して
Windows リソース保護は、整合性違反を検出しませんでした。となっていたら修復完了です。