Site menu:



Windows XP > Windows XP How To's


Using the System File Checker Tool

By:

The System File Checker (SFC) tool is a command-line tool that can be used to restore protected system files on your computer by using the backup versions that are stored in the Dllcache folder, or files copied from the Windows XP installation source.

Protected file types include those with .sys, .dll, .exe, .ttf, .fon and .ocx file name extensions.

You must be logged on as an administrator or as a member of the Administrators group to be allowed to run System File Checker.

System File Checker Tool Syntax

  • /Scannow: Scans all protected system files immediately and replaces incorrect versions with correct Microsoft versions. This command may require access to the Windows installation source files.
  • /Scanonce: Scans all protected system files one time when you restart your computer. This command may require access to the Windows installation source files when you restart the computer.
  • /Scanboot: Scans all protected system files every time you start your computer. This command may require access to the Windows installation source files every time you start your computer.
  • /Revert: Returns SFC to the default setting (do not scan protected files when you start the computer). The default cache size is not reset when you run this command.
  • /Purgecache: Purges the file cache and scans all protected system files immediately. This command may require access to the Windows installation source files.
  • /Cachesize=x: Sets the file cache size to x megabytes (MB). The default size of the cache is 50 MB. This command requires you to restart the computer, and then run the /purgecache command to adjust the size of the on-disk cache.

To start using SFC, go to Start > Run, and type cmd in the Open box, then click OK to open a command prompt. Here you can using the command sfc with any of the switches indicated above (most of the time you'll be using sfc /scannow (note the space after sfc).

When you start SFC, you may see the following prompt several times during the process:

System File Checker


What you can do to eliminate this is to copy the I386 folder from your Windows XP CD to your hard drive. Just copy the whole folder to your hard drive. Note that it'll take some 500 MB in size, but with today's large hard drives this shouldn't be a problem. If you didn't get a Windows CD when you purchased your computer, it is likely that this folder will already be on your hard drive.

The next step is to let Windows know where to find the files. Follow these steps:

  1. Start the Registry Editor
  2. Go to HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Setup
  3. Double click the value SourcePath in the right pane, and enter the location where you copied the I386 folder (probably you copied the folder in the root of your C drive, thus the value would be C:\.
  4. Close the registry editor, and log off from Windows, or restart your computer for the setting to take effect.

Windows will keep track of updated system files that are introduced through the "normal" channels, such as Windows Update, Windows Service Pack installation using Update.exe, Hotfixes installed using Hotfix.exe or Update.exe and Operating system upgrades using Winnt32.exe.

The System File Checker tool is part of Windows XP's file protection, for more information read Microsoft Knowledge Base article 222193: Description of the Windows File Protection Feature.

Microsoft Knowledge Base Articles Relating to the System File Checker tool

263499 -

Prompted for CD-ROM When You Run System File Checker While Correct CD-ROM Is in Drive *

291594 -

The Windows File Checker Utility Cannot Restore Protected Operating System Files

897128 -

You may be prompted to insert a Windows XP Professional CD when you run the System File Checker tool in Windows XP Home Edition

900910 -

You are prompted to insert a Windows XP SP2 CD when you try to run the System File Checker tool on a Windows XP SP2-based computer

*) Although this article says it applies to Windows 2000, it also applies to Windows XP; I speak from experience!