系统文件检查器(sfc.exe) 是 Windows 内置的 工具,用于 验证系统文件完整性并修复损坏的系统文件。 绝大多数由 系统文件损坏造成的故障,如: 蓝屏、经常性死机、无法开机 均可通过运行sfc.exe 解决。

【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe


下面笔者分   系统能否启动  两种情况讲解 sfc.exe的使用方法:

1.系统可以正常启动。
进入Windows 正常 环境 (或者安全模式)
启动CMD
A.输入
sfc /scannow 

,开始扫描 所有系统文件完整性 并 自动修复损坏文件。
(输入 sfc /verifyonly,只扫描 不修复)

B.输入 sfc /scanfile=文件路径 ,扫描 并 修复特定文件
(输入sfc /verifyfile=文件路径,只扫描不修复)

(注: sfc.exesfc)
【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe





2.系统无法启动(无法进入Windows 环境)

此种情况下,我们需要进入 Windows 恢复环境(Windows RE)
系统安装光盘(或者 修复光盘)放入 光驱,进入BIOS设置第一启动为 光驱 。出现 安装windows 界面时,选择 修复系统。进入 Windows RE。

【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe


选择你的 系统安装
【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe


启动CMD

【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe

A.检查修复 所有系统文件(X为 系统盘符):
sfc /scannow /offbootdir=X:\  /offwindir=X:\windows

【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe


B,检查修复特定文件(已知某文件损坏)
sfc /scanfile=d:\windows\system32\zipfldr.dll /offbootdir=d:\ /offwindir=d:\windows

【修复】Windows <wbr>7强大的系统文件修复工具鈥斺攕fc.exe
这样便 修复了损坏了的 zipfldr.dll 文件。


PS:
由于修复损坏文件的复杂性,即使在系统可以启动的情况下,笔者仍然建议 选择 第二种情况下的做法, 安装光盘的存在可以保证修复的可靠性。
 
http://blog.sina.com.cn/s/blog_6469adc50100k4xs.html

===================================================

 

 

在Windows中Sfc.exe(系统文件检查器)是用来验证系统文件完整性并修复系统文件的实用工具。在Windows XP中,它的功能更为强大:我们也可以用这个工具来实现还原的功能,Windows XP中“系统文件检查器”可以扫描所有受保护的系统文件以验证其版本,也可以设置文件缓存大小、清除文件缓存及重新填充 “%SystemRoot%\System32\Dllcache”文件夹。 

  在Windows XP中启用“系统文件检查器”,先要运行“命令提示符”:单击“开始→所有程序→附件→命令提示符”,或是单击“开始→运行”命令,在命令行中键入 “cmd”并按下回车键。然后在“命令提符”窗口的光标提示符后键入“Sfc”并按下回车键,会给出所示的提示。 

  比如我们键入“Sfc/SCANNOW”,按下回车键后,“系统文件检查器”就会开始检查当前的系统文件是否有损坏、版本是否正确,如果发现错 误,程序会要求你插入Windows XP安装光盘来修复或者替换不正确的文件。如果Dllcache文件夹被破坏或者不可用,你还可以使用“Sfc/scanonce”或“Sfc /scanboot”命令修复该文件夹的内容以保证系统的安全性和稳定性。

Windows XP中SFC参数释疑

大家都已知道Windows XP中sfc的基本用法,但命令行中的参数意义和“帮助和支持”中的介绍却有所不同,在一定程度上影响了用户的使用,下面结合使用介绍其意义。

  1. 一般媒体上在介绍sfc的使用时,都举例说输入sfc /scannow即可运行sfc(系统文件检查),但其实默认情况下,Windows 文件保护一直处于启用状态,只有当Dllcache文件夹损坏或者不能使用时才有必要使用 sfc /scannow、sfc /scanonce 或 sfc /scanboot 以修复 Dllcache 目录的内容。

  小知识:文件保护

  在你安装除了操作系统以外的软件时有可能会覆盖一些共享的系统文件,诸如动态链接库(“*.dll” 文件)和可执行文件(“*.exe” 文件)等,覆盖后,系统可能就此不再稳定,从 Windows 2000 开始微软新增了文件保护功能,Windows 文件保护功能可以防止受到保护的系统文件被替换。Windows 文件保护能检测到其它程序要替换或移动受保护的系统文件的企图。如果文件版本不正确,Windows 文件保护会从 Dllcache 文件夹(又被称作文件保护的高速缓存,位于系统目录的system32文件夹下)或Windows 2000/XP安装光盘中替换回该文件。

  2. 关于sfc /revert的意义,举个例子,如果你一旦运行了sfc /scanboot,则今后每次进入Windows XP时都会自动运行sfc,在“系统配置实用程序”的“启动”中都不见其踪迹,如想禁止,可运行一遍sfc /revert将其恢复到默认状态。

  3. sfc /purgecache 可以清除“Windows 文件保护”文件高速缓存,即删除了dllcache文件夹下的全部内容,对于硬盘比较紧张的用户这当然也可以,但从此Windows XP失去了自己恢复系统文件的能力,所以折中的办法应该是适当减小该文件夹的大小,/cachesize=x参数即可设置“Windows 文件保护”文件高速缓存的大小,其默认大小为102M,最小值为15M,你可以根据情况设置,Windows会根据文件的重要程度自行调节(当然也可增大 该文件夹)。其它参数的意义不再赘述。

  4. 禁用文件保护

  如果你想禁用文件保护,可以按下述办法,在“开始→运行”中输入 gpedit.msc,在“本地计算机策略→计算机配置→管理模板→系统”中找到“windows文件保护”,在右窗口中双击“windows文件保护扫 描”,进入“设置”标签,选择“已禁用”即可,在这里你还可以设置文件保护的扫描频率以及指定高速缓存的位置。

Windows XP 的sfc.exe
——————————————————————————————————————————————-

Microsoft(R) Windows XP Windows File Checker 版本 5.1
(C) 1999-2000 Microsoft Corp. 保留所有权利

扫描所有受保护的系统文件并用正确的 Microsoft 版本替换不正确的版本。

SFC [/SCANNOW] [/SCANONCE] [/SCANBOOT] [/REVERT] [/PURGECACHE] [/CACHESIZE=x]
/SCANNOW        立即扫描所有受保护的系统文件。
/SCANONCE       下次启动时扫描所有受保护的系统文件。
/SCANBOOT       每次启动时扫描所有受保护的系统文件。
/REVERT         将扫描返回到默认设置。
/PURGECACHE     清除文件缓存。
/CACHESIZE=x    设置文件缓存大小。

——————————————————————————————————————————————-

Windows 2008 的sfc.exe
——————————————————————————————————————————————-

Microsoft (R) Windows (R) Resource Checker 版本 6.0
版权所有(C) 2006 Microsoft Corporation。保留所有权利。

扫描所有受保护的系统文件的完整性,并用正确的 Microsoft 版本替换不正确的版本。

SFC [/SCANNOW] [/VERIFYONLY] [/SCANFILE=<file>] [/VERIFYFILE=<file>]
    [/OFFWINDIR=<offline windows directory> /OFFBOOTDIR=<offline boot directory>
]

/SCANNOW        扫描所有受保护的系统文件的完整性,并修复出问题的文件(如果出现问
题)。
/VERIFYONLY     扫描所有受保护的系统文件的完整性。不执行修复操作。
/SCANFILE       扫描参考文件的完整性,如果找到问题,则修复文件。
                指定完整路径 <文件>
/VERIFYFILE     验证带有完整路径 <文件> 的文件的完整性。不执行修复。
/OFFBOOTDIR     用于脱机修复指定脱机启动目录的位置
/OFFWINDIR      用于脱机修复指定脱机 Windows 目录的位置

例如

        sfc /SCANNOW
        sfc /VERIFYFILE=c:\windows\system32\kernel32.dll
        sfc /SCANFILE=d:\windows\system32\kernel32.dll /OFFBOOTDIR=d:\ /OFFWINDI
R=d:\windows
        sfc /VERIFYONLY