システム ファイル チェッカー ツールを使用して不足または破損しているシステム ファイルを修復する

適用先
Windows 8.1 Windows 8.1 Enterprise Windows 8.1 Pro Windows 8 Windows 8 Enterprise Windows 8 Pro Windows 7 Enterprise Windows 7 Home Basic Windows 7 Home Premium Windows 7 Professional Windows 7 Starter Windows 7 Ultimate Windows Vista Enterprise 64-bit Edition Windows Vista Ultimate 64-bit Edition Windows Vista Business Windows Vista Business 64-bit Edition Windows Vista Enterprise Windows Vista Ultimate Windows 10 Windows 11

重要な Windows システム ファイルが見つからないか破損している場合、オペレーティング システムが誤動作し始める可能性があります。 一般的な症状としては、Windows の機能が正常に動作しない、システム エラーが発生する、Windows が応答しなくなる、フリーズする、などがあります。

これらの問題が発生した場合は、組み込みの Windows 修復ツール (展開イメージのサービスと管理 (DISM) とシステム ファイル チェッカー (SFC) を使用して、破損したシステム ファイルをスキャンし、不足している Windows コンポーネントまたは破損した Windows コンポーネントを復元して、システムを安定した動作状態に戻すことができます。

手順 1: DISM を実行する

DISMは、破損したファイルを修復するために必要なファイルを提供します。  システム ファイル チェッカーを実行する前に DISM を実行する必要があります。  目的

  1. 管理者特権でのコマンド プロンプトを開きます。

    1. [検索] ボックスに「cmd」と入力します。
    2. 検索結果で、[コマンド プロンプト] を右クリックし、[管理者として実行] を選択します。
    3. 確認または管理者パスワードの入力を求められたら、パスワードを入力するか、[ 許可] をクリックします。
  2. [ コマンド プロンプト ] ウィンドウで、次のコマンドを入力し、Enter キーを押します。  コマンドの処理には数分間かかることがあります。

DISM.exe /Online /Cleanup-image /Restorehealth

ヒント

  • DISM では、Windows Updateをソースとして使用して、必要なファイルを提供します。 ただし、Windows Update クライアントが破損している場合は、実行中の Windows インストール、または Windows DVD などのネットワーク共有またはリムーバブル メディアの Windows サイド バイ サイド フォルダーをファイルのソースとして使用できます。 これを行うには、次のコマンドを実行します。
  • DISM.exe /Online /Cleanup-Image /RestoreHealth /Source:C:\RepairSource\Windows /LimitAccess
  • 上記のコマンドで、 C:\RepairSource\Windows プレースホルダーを修復ソースの場所に置き換えます。  DISM ツールを使用して Windows を修復する方法の詳細については、「Windows イメージを修復する」を参照してください。

手順 2: システム ファイル チェッカーを実行する

[コマンド プロンプト] ウィンドウで、次のコマンドを入力し、Enter キーを押します。

sfc /scannow

管理者権限を持つコマンド プロンプト - sfc /scannow  
 

警告

検証が 100% 完了するまで、このコマンド プロンプト ウィンドウを閉じないでください。

sfc /scannow コマンドは、保護されているすべてのシステム ファイルをスキャンし、破損したファイルをキャッシュされたコピーに置き換えます。  スキャンの結果は、このプロセスが終了した後に表示されます。 次のいずれかのメッセージが表示される場合があります。

スキャン結果メッセージ 対応するアクション
Windows リソース保護は、整合性違反を検出しませんでした。 システム ファイルが見つからないか破損していません。
Windows リソース保護は要求された操作を実行できませんでした。 この問題を解決するには、システム ファイル チェッカー スキャンを セーフ モードで実行します。
%WinDir%\WinSxS\Temp の下に PendingDeletes フォルダーと PendingRenames フォルダーが存在することを確認します。
%WinDir% プレースホルダーは、C:\Windows などの Windows オペレーティング システム フォルダーを表します。
Windows リソース保護は、破損したファイルを検出し、正常に修復しました。 操作が成功しました。
システム ファイル スキャンと復元に関する詳細な情報を表示するには、 システム ファイル チェッカー プロセスの詳細を表示する方法に関するページを参照してください。
Windows リソース保護は、破損したファイルを検出しましたが、その一部を修正できませんでした。 破損したファイルを手動で修復するには、システム ファイル チェッカーの処理の詳細を表示して破損したファイルを確認し、破損したファイルを、正常であることが判明しているファイルのコピーに手動で置換します。

追加情報

システム ファイル チェッカーの処理の詳細を表示する方法

CBS に含まれる詳細を表示するには 。ログ ファイルは、次の手順に従って、ログ内の情報をデスクトップ上の表示可能なテキスト ファイルにコピーします。

  1. 前に説明したように、管理者特権のコマンド プロンプトを開きます。

  2. [コマンド プロンプト] ウィンドウで、次のコマンドを 1 行に入力し、Enter キーを押します。

    findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfcdetails.txt" 
    

    Sfcdetails.txt ファイルには、コンピューターでシステム ファイル チェッカー ツールが実行されるたびに発生する詳細情報が含まれます。 これには、システム ファイル チェッカー ツールで修復されなかったファイルに関する情報が含まれています。 日付と時刻をチェックして、前回システム ファイル チェッカー ツールを実行したときに見つかった問題を確認します。

  3. デスクトップから Sfcdetails.txt ファイルを開きます。

  4. Sfcdetails.txt ファイルは、次の形式を使用します。
    日付/時刻 SFC の詳細 次のサンプル ログ ファイルには、修復できなかったファイルのエントリが含まれています:2007-01-12 12:10:42、Info CSI 00000008 [SR] Cannot repair member file [l:34{17}]"Accessibility.dll" of Accessibility, Version = 6.0.6000.16386, pA = PROCESSOR_ARCHITECTURE_MSIL (8), Culture neutral, VersionScope neutral, PublicKeyToken = {l:8 b:b03f5f7f11d50a3a}, Type neutral, TypeName neutral, PublicKey neutral in the store, ファイルが見つかりません

破損したシステム ファイルを、正常であることが判明しているファイルのコピーに手動で置き換える方法

ログ ファイルを確認して、破損したシステム ファイルと修復できなかったファイルを確認した後、破損したファイルの場所を見つけて、破損したファイルを既知の適切なファイルのコピーに手動で置き換えます。

これを行うには、次の手順に従います。  次のコマンドでは、 <Path_And_File_Name> プレースホルダーは、破損したファイルのパスとファイル名を表します。

コンピューターと同じバージョンの Windows を実行している別のコンピューターから、システム ファイルの既知の適切なコピーを取得できる場合があります。 コピーする予定のシステム ファイルが適切なコピーであることを確認するには、そのコンピューターでシステム ファイル チェッカー プロセスを実行できます。

手順 1: 破損したシステム ファイルの管理所有権を取得します。

管理者特権のコマンド プロンプトに次のコマンドを入力し、Enter キーを押します。

takeown /f <Path_And_File_Name>

例:

takeown /f C:\windows\system32\jscript.dll. 

管理者権限を持つコマンド プロンプト - コマンドが成功しました

手順 2: 破損したシステム ファイルへのフル アクセス権を管理者に付与します。

次のコマンドを入力し、Enter キーを押します。

icacls <Path_And_File_Name> /grant administrators:F

例:

icacls C:\windows\system32\jscript.dll /grant administrators:F

管理者権限を持つコマンド プロンプト

手順 3: 破損したシステム ファイルを、既知の適切なファイルのコピーに置き換えます。

次のコマンドを入力し、Enter キーを押します。

Copy <Source_File> <Destination>

上記のコマンドで、 <Source_File>placeholder を、コンピューター上のファイルの既知の適切なコピーのパスとファイル名に置き換え、 <Destination> プレースホルダーを破損したファイルのパスとファイル名に置き換えます。

例:

copy E:\temp\jscript.dll C:\windows\system32\jscript.dll

上記の手順が動作しない場合は、Windows を再インストールする必要がある場合があります。 詳細については、「 Windows の回復オプション」を参照してください。