Обновление таблицы
Таблица Upgrade содержит сведения, необходимые во время основных обновлений. Чтобы полностью включить возможности обновления установщика, каждый пакет должен иметь свойство UpgradeCode и таблицу Upgrade. Каждая запись в таблице Upgrade содержит характерное сочетание кода обновления, версии продукта и языка, используемого для определения набора продуктов, затронутых обновлением. Когда действие FindRelatedProducts обнаруживает затронутый продукт, установленный в системе, оно добавляет код продукта к свойству, указанному в столбце ActionProperty. Действия RemoveExistingProducts и MigrateFeatureStates только удаляют или переносят продукты, перечисленные в столбце ActionProperty.
Таблица Upgrade содержит столбцы, показанные в следующей таблице.
Столбец | Type | Ключ | Допускает значения NULL |
---|---|---|---|
UpgradeCode | GUID | Да | N |
VersionMin | Text | Да | Да |
VersionMax | Text | Да | Да |
Язык | Text | Да | Да |
Атрибуты | Целое число | Да | N |
Удалить | Форматированные | Нет | Да |
ActionProperty | Идентификатор | Нет | Нет |
Столбцы
-
UpgradeCode
-
Свойство UpgradeCode в этом столбце указывает код обновления всех продуктов, которые должны быть обнаружены с помощью действия FindRelatedProducts .
-
VersionMin
-
Нижняя граница диапазона версий продуктов, обнаруженных FindRelatedProducts. Введите msidbUpgradeAttributesVersionMinInclusive в поле Атрибуты, чтобы включить VersionMin в диапазон. Если VersionMin равен пустой строке (""), она вычисляется так же, как и 0. Если versionMin имеет значение NULL, FindRelatedProducts игнорирует msidbUpgradeAttributesVersionMinInclusive и обнаруживает все предыдущие версии. VersionMin и VersionMax не должны иметь значение NULL.
VersionMin должна быть допустимой версией продукта, как описано для свойства ProductVersion . Обратите внимание, что установщик Windows использует только первые три поля версии продукта. Если в версию продукта включено четвертое поле, установщик игнорирует четвертое поле.
-
VersionMax
-
Верхняя граница диапазона версий продукта, обнаруженного действием FindRelatedProducts . Введите msidbUpgradeAttributesVersionMaxInclusive в поле Атрибуты, чтобы включить VersionMax в диапазон. Если VersionMax является пустой строкой (""), она вычисляется так же, как 0. Если versionMax имеет значение NULL, FindRelatedProducts игнорирует msidbUpgradeAttributesVersionMaxInclusive и обнаруживает все версии продуктов, превышающие (или превышающие или равные) нижней границы, заданной versionMin и msidbUpgradeAttributesVersionMinInclusive. VersionMin и VersionMax не должны иметь значение NULL.
VersionMax должна быть допустимой версией продукта, как описано для свойства ProductVersion . Обратите внимание, что установщик Windows использует только первые три поля версии продукта. Если в версию продукта включено четвертое поле, установщик игнорирует четвертое поле.
-
Язык
-
Набор языков, обнаруженных FindRelatedProducts. Введите список идентификаторов числовых языков (LANGID), разделенных запятыми. Введите msidbUpgradeAttributesLanguagesExclusive в поле Атрибуты, чтобы определить все языки, исключающие перечисленные в разделе Язык. Если параметр Language имеет значение NULL или пустую строку (""), FindRelatedProducts игнорирует msidbUpgradeAttributesLanguagesExclusive и обнаруживает все языки.
-
Атрибуты
-
Этот столбец содержит битовые флаги, указывающие атрибуты таблицы Upgrade.
Имя битового флага Decimal Шестнадцатеричный attribute msidbUpgradeAttributesMigrateFeatures 1 0x001 Переносит состояния компонентов, включив логику в действии MigrateFeatureStates . msidbUpgradeAttributesOnlyDetect 2 0x002 Обнаруживает продукты и приложения, но не удаляет. msidbUpgradeAttributesIgnoreRemoveFailure 4 0x004 Продолжает установку при сбое удаления продукта или приложения. msidbUpgradeAttributesVersionMinInclusive 256 0x100 Определяет диапазон версий, включая значение в VersionMin. msidbUpgradeAttributesVersionMaxInclusive 512 0x200 Определяет диапазон версий, включая значение в VersionMax. msidbUpgradeAttributesLanguagesExclusive 1024 0x400 Определяет все языки, за исключением языков, перечисленных в столбце Язык. -
Удалить
-
Установщик задает для свойства REMOVE компоненты, указанные в этом столбце. Функции, которые необходимо удалить, можно определить во время выполнения. Строка formatted , введенная в этом поле, должна вычислить разделенный запятыми список имен признаков. Например: [Компонент1],[Компонент2],[Компонент3]. Никакие признаки не удаляются, если поле содержит отформатированный текст, результатом которого является пустая строка (""). Установщик устанавливает remove=ALL только в том случае, если поле Удалить пустое. Обратите внимание на разницу между пустой строкой и пустым полем. Если поле пустое, оно имеет значение NULL.
-
ActionProperty
-
Когда действие FindRelatedProducts обнаруживает связанный продукт, установленный в системе, оно добавляет код продукта к свойству, указанному в этом поле. Свойство, указанное в этом столбце, должно быть открытым, а автор пакета должен добавить свойство в свойство SecureCustomProperties . Каждая строка в таблице Upgrade должна иметь уникальное значение ActionProperty. После FindRelatedProducts значение этого свойства представляет собой список кодов продуктов, разделенных точкой с запятой (;), обнаруженных в системе.
Проверка