Все ранние версии Windows имели один общий недостаток — при установке дополнительного программного обеспечения практически любые совместно используемые системные файлы, в том числе DLL и ЕХЕ, могли быть изменены. Последствия замены этих файлов некорректными или несовместимыми версиями могли быть непредсказуемыми: от снижения производительности операционной системы до некорректного поведения остальных приложений, периодического появления ошибок STOP и даже проблем с загрузкой.
В Windows 2000 впервые за всю историю Windows сделана попытка исправления этой ситуации. Разумеется, эта функциональная возможность также предусмотрена и в Windows XP. Она называется Windows File Protection и включает в себя два компонента:
сервис Windows File Protection;
утилита командной строки System File Checker (Sfc.exe).
Сервис Windows File Protection (WFP) основывается на принципе определения цифровых подписей всех защищенных системных файлов (SYS, DLL, OCX, TTF, FON, EXE) и защищает их от случайного изменения или перемещения. WFP выполняется в фоновом режиме и защищает все файлы установленные программой Setup в ходе инсталляции операционной системы.
WFP выявляет все попытки других программ выполнить замену или перемещение защищенных системных файлов, осуществляя проверку наличия у файла цифровой подписи, свидетельствующей, что версия, предназначенная на замену, совместима с Windows XP. В случаях, когда новая версия системного файла не корректна, System File Protection замещает этот файл резервной копией из папки %SystemRoot%\System32\D\lcache или с компакт-диска Windows XP. Если функция System File Protection не может обнаружить надлежащей версии файла, она предлагает пользователю указать путь к каталогу, из которого такая версия может быть скопирована, а также регистрирует попытку замещения файла в системном журнале событий. По умолчанию эта функция всегда активизирована, и позволяет выполнять замену системных файлов только в случае установки следующих видов программного обеспечения:
сервисных пакетов Windows 2000 и Windows XP (с использованием программы Update.exe);
дистрибутивных пакетов типа Hotfix (с использованием Hotfix.exe); П обновления версии операционной системы (с помощью Winnt32.exe).