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


Основные обновления

Основное обновление — это комплексное обновление продукта, которое требует изменения свойства ProductCode .

Обычно основное обновление удаляет предыдущую версию приложения и устанавливает новую версию. При крупном обновлении можно реорганизовать дерево компонентов компонентов. Дополнительные сведения см. в разделах ProductCode и Изменение кода продукта.

Во время крупного обновления с помощью установщика Windows установщик ищет на компьютере пользователя приложения, связанные с ожидающим обновлением, а при обнаружении одного из них он получает версию установленного приложения из системного реестра. Затем установщик использует сведения в базе данных обновления, чтобы определить, следует ли обновить установленное приложение.

Чтобы включить возможности обновления установщика, каждый пакет должен иметь свойство UpgradeCode и таблицу обновления. Каждый автономный продукт или набор продуктов должен иметь собственный код обновления. Дополнительные сведения об использовании UpgradeCode см. в разделе Использование UpgradeCode. Каждая запись в таблице Upgrade содержит код обновления, версию продукта и язык, используемые для идентификации набора продуктов, затронутых обновлением. Когда действие FindRelatedProducts обнаруживает, что затронутый продукт установлен в системе, код продукта добавляется в свойство в столбце ActionProperty таблицы Upgrade. Действие RemoveExistingProducts и Действие MigrateFeatureStates удаляют или переносят продукты, перечисленные в списке ActionProperty. Авторы пакетов также могут следовать процедуре, описанной в разделе Подготовка приложения для будущих крупных обновлений.

Пакеты обновления установщика Windows можно создать таким образом, чтобы крупные обновления не устанавливались, если у пользователя уже установлена более новая версия приложения. Дополнительные сведения о том, как создать пакет, который не будет устанавливаться в более новой версии, см. в разделе Запрет установки старого пакета в более новой версии.

Примечание

Установщик Windows использует только первые три поля версии продукта. Описание этих полей см. в разделе Свойство ProductVersion . Если в версию продукта включено четвертое поле, установщик игнорирует четвертое поле.

 

Рекомендуемый метод применения крупного обновления путем установки полного пакета для обновленного продукта. Сведения о применении основного обновления путем установки продукта см. в статье Применение основных обновлений путем установки продукта.

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

Примечание

Если приложение устанавливается в контексте установки для каждого пользователя, любое крупное обновление приложения также должно выполняться с помощью контекста для каждого пользователя. Если приложение устанавливается в контексте установки для каждого компьютера, любое крупное обновление приложения также должно выполняться с помощью контекста для каждого компьютера. Установщик Windows не будет устанавливать основные обновления в контексте установки.

 

Вы можете указать настраиваемые действия, которые последовательно выполняются после InstallValidate для обработки основных обновлений, с помощью свойства UPGRADEINGPRODUCTCODE :

  • Если вы хотите, чтобы настраиваемое действие выполнялось во время удаления продукта, но не во время удаления продукта путем крупного обновления, используйте это условие.

    REMOVE="ALL" AND NOT UPGRADINGPRODUCTCODE

  • Если требуется, чтобы настраиваемое действие выполнялось только во время основного обновления, используйте это условие.

    ОБНОВЛЕНИЕPRODUCTCODE