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


Создание сведений о последовательности исправлений (PATCHWIZ.DLL)

Версия PATCHWIZ.DLL, выпущенная с помощью установщика Windows 3.0, может автоматически создавать сведения о последовательности исправлений и добавлять в таблицу msiPatchSequence новое исправление.

Задайте для свойства SEQUENCE_DATA_GENERATION_DISABLED значение 1 (один) в таблице свойств файла .pcp, чтобы предотвратить автоматическое создание сведений о последовательности исправлений. Если это свойство отсутствует, данные автоматически создаются и добавляются.

При использовании PATCHWIZ.DLL с установщиком Windows 3.0 для автоматического создания сведений о последовательности исправлений происходит следующее:

  • Новая строка добавляется в таблицу MsiPatchSequence для каждого кода продукта целевого образа, перечисленного в таблице TargetImages.

  • Значения, добавленные в столбец PatchFamily в новых строках, соответствуют кодам продуктов целевых образов, перечисленных в таблице TargetImages .

  • Значения, добавленные в столбцы Последовательности в новых строках, создаются на основе самой высокой версии продукта, на которую нацелен патч, и времени по UTC на момент его создания. Порядковый номер — <Минорная версия продукта>.<Основной номер сборки>.<Метка времени 1>.<Метка времени 2>.

    • Первое поле — это версия продукта самой высокой из версий, на которую нацелен патч.
    • Второе поле — это основной номер сборки самой высокой версии продукта, попадающей под действие патча.

    Два поля временной метки предназначены для 32-разрядной метки времени, необходимой для подсчета секунд в формате UTC.

    Заметка

    Версии продукта имеют следующий формат: <Основная версия продукта>.<Минорная версия продукта>.<Основной номер сборки>.<Минорный номер сборки>, и продукт с номером версии 2.1.0.0 является более новой версией, чем продукт с номером версии 1.2.0.0.

     

  • Атрибут msidbPatchSequenceSupersedeEarlier вводится в столбец 'Атрибут' новых строк, создаваемых для сервис-паков (SP) или небольших обновлений. Атрибут msidbPatchSequenceSupersedeEarlier не добавляется в патчи QFE или небольшие обновления.

    Заметка

    Пакет обновления (SP) должен содержать исправления всех QFEs, выпущенных до него. Однако если автор исправлений задает для свойства SEQUENCE_DATA_SUPERSEDENCE значение 0 (ноль) или 1 (один) в PCP-файле, столбец "Атрибуты" всех строк в таблице MsiPatchSequence имеет значение, указанное для SEQUENCE_DATA_SUPERSEDENCE. Авторы исправлений, которым требуется больше элементов управления, должны вручную создать столбец "Атрибуты".

     

Если в файл .pcp включена таблица PatchSequence, свойство SEQUENCE_DATA_GENERATION_DISABLED игнорируется, а сведения, предоставляемые в таблице PatchSequence, можно добавить в таблицу MsiPatchSequence патча.