Поделиться через


Использование установщика Windows и защиты ресурсов Windows

Установщик Windows соответствует Защите ресурсов Windows (WRP) при установке основных системных файлов, папок и сведений реестра в Windows Server 2008 и более поздних версиях и Windows Vista и более поздних версиях.

WRP в Windows Server 2008 и Windows Vista заменяет защиту файлов Windows (МПП) в Windows Server 2003, Windows XP и Windows 2000. Разработчики установщика Windows должны отметить следующие изменения в том, как установщик обрабатывает защищенные ресурсы в Windows Server 2008 и более поздних версиях, а также Windows Vista и более поздних версий:

  • При запуске в Windows Server 2008 и более поздних версий или Windows Vista установщик Windows пропускает установку любого файла, защищенного WRP, установщик вводит предупреждение в файле журнала и продолжается с остальными версиями установки без ошибки. В Windows Server 2003, Windows XP и Windows 2000, когда установщик Windows сталкивался с файлом, защищенным Windows File Protection (WFP), он запрашивал, чтобы WFP установила этот файл.
  • WRP в Windows Server 2008 и более поздних версиях или Windows Vista и более поздних версиях может защитить ключи реестра в дополнение к файлам. Если установщик Windows сталкивается с разделом реестра, защищенным WRP, установщик пропускает установку этого раздела реестра, установщик вводит предупреждение в файле журнала и продолжается с оставшейся частью установки без ошибки.
  • Обратите внимание, что если компонент установщика Windows содержит файл или раздел реестра, защищенный WRP, этот ресурс должен использоваться в качестве keyPath для компонента. В этом случае установщик Windows не устанавливает, обновляет или удаляет компонент. В пакет установки не следует включать защищенные ресурсы. Вместо этого следует использовать поддерживаемые механизмы замены ресурсов для защиты ресурсов Windows.

Дополнительные сведения о WRP см. в Защите ресурсов Windows, а также сведения, которые предоставлены на Microsoft Technet.

МПП для Windows Server 2003 и Windows XP/2000

Установщик Windows соответствует защите файлов Windows (МПП) при установке основных системных файлов в Windows Server 2003, Windows XP и Windows 2000. Если защищенный системный файл изменяется автоматической установкой приложения, МПП восстанавливает файл до проверенной версии файла.

Установщик Windows никогда не пытается установить или заменить защищенный файл. Когда действие InstallFiles или любое другое действие, запланированное перед InstallFiles, пытается установить защищённый файл в Windows Server 2003, Windows XP или Windows 2000, установщик вызывает WFP с запросом на установку или замену защищённого файла. Установщик запрашивает установку файла из МПП сразу после выполнения действия InstallFiles. МПП устанавливает или заменяет файл в системе пользователя кэшированными версиями защищенного файла. Обратите внимание, что это не гарантирует, что версия файла, установленного из кэша, является версией, требуемой приложением. После того, как WFP установит файл, установщик определяет, соответствует ли эта версия версии в пакете. Если версия файла в пакете больше установленной версии, установщик сообщает пользователю, что он не может обновить систему и что обновление операционной системы может потребоваться для приложения.

Если после InstallFiles какое-либо действие пытается установить или заменить защищенный файл, который еще не был установлен в системе, установщик не сможет вызвать Windows File Protection для установки файла. В этом случае установщик сообщает пользователю, что он не может обновить систему и что обновление операционной системы может потребоваться для приложения.

Установщик также обращается к системе защиты файлов Windows (WFP) при удалении файлов и никогда не пытается удалить защищенные системные файлы.

Основные файлы компонентов, защищенные МПП

Обратите внимание, что если компонент установщика Windows содержит файл WFP, этот файл должен быть указан в качестве ключевого пути для компонента.

Когда установщик пытается установить файл ключа компонента в Windows Server 2003, Windows XP или Windows 2000, он сначала вызывает МПП, чтобы определить, защищает ли файл ключа. Если файл ключа компонента защищен МПП и этот файл ключа уже установлен, установщик обновляет компонент только в том случае, если версия файла ключа в пакете больше установленной версии. Если пакет установки указывает, что компонент установлен, и файл ключа компонента в данный момент не установлен, независимо от того, защищен ли файл ключа установщик устанавливает компонент. После установки любого компонента, имеющего ключевой файл, защищенный Защитой файлов Windows (МПП), он устанавливается окончательно, и установщик никогда не удаляет или заменяет компонент.

Установка сборок с помощью МПП

МПП для сборок отличается от МПП для системных файлов.

МПП защищает файлы системы Windows Server 2003, Windows XP и Windows 2000 путем обнаружения попыток заменить защищенные системные файлы. Эта защита активируется после того, как МПП получает уведомление об изменении каталога для файла в защищенном каталоге. Когда МПП получает это уведомление, он определяет, какой файл изменился. Если файл защищен, МПП ищет подпись файла в статическом файле каталога, чтобы определить, является ли новый файл правильным. Если версия файла неправда, система заменяет файл правильной версией из кэша или носителя распространения.

В отличие от этого, МСО сборок является динамическим. МПП распространяется на файлы по мере их добавления в общий параллельный кэш сборок. Если сборка становится поврежденной, МПП запросит, чтобы установщик заменил файл. Установщик Windows может или не сможет заменить файл в зависимости от того, доступен ли исходный пакет. Если исходный пакет недоступен, МПП создаст диалоговое окно с сообщением о том, что он не может восстановить файл.

Обратите внимание, что неуправляемые совместно используемые сборки, установленные в %windir%\winsxs, защищены WFP. Неуправляемые частные сборки, установленные в каталоге приложений, не защищены МПП. Управляемые глобальные сборки, установленные в каталоге приложений или %windir%\assembly\gac, не защищены МПП.

Защита ресурсов Windows