產生修補程式順序資訊 (PATCHWIZ.DLL)

Windows Installer 3.0 發行 的PATCHWIZ.DLL 版本可以自動產生修補程式排序資訊,並新增至 MsiPatchSequence 資料表 新的修補程式。

將 SEQUENCE_DATA_GENERATION_DISABLED .pcp 檔案的 [ 屬性] 資料表 中的 (屬性設定為 1 (一個) ,以防止自動產生修補程式排序資訊。 如果此屬性不存在,系統就會自動產生並新增資訊。

當使用 Windows Installer 3.0 發行 的PATCHWIZ.DLL 用來自動產生修補程式排序資訊時,會發生下列情況:

  • 新資料列會針對TargetImages 資料表中列出的目標影像的每個產品代碼,新增至MsiPatchSequence資料表。

  • 新資料列中新增至 PatchFamily 資料行的值會對應至 TargetImages 資料表中所列之目標影像的目標產品代碼。

  • 新增至新資料列中序列資料行的值是使用修補程式的目標最高產品版本和產生修補程式的 UTC 時間來產生。 序號為 < 產品次要版本 > 。 <組建主要數位 > 。 <時間戳記 1 > 。 <時間戳記 2 > 。

    • 第一個欄位是修補程式目標產品最高版本的產品版本。
    • 第二個欄位是修補程式目標產品最高版本的組建主要數目。

    兩個時間戳記欄位會考慮 32 位時間戳記,這是計算國際標準時間 (UTC) 秒所需的時間戳記。

    注意

    產品版本的格式如下: < 產品主要版本 > 。 <產品次要版本 > 。 <組建主要數位 > 。 <組建次要號碼 > 和版本號碼為 2.1.0.0 的產品比版本號碼為 1.2.0.0 的產品更高

     

  • msidbPatchSequenceSupersedeEarlier 屬性會輸入為 Service Pack (SP) 或次要升級修補程式所產生的新資料列的 Attribute 資料行。 msidbPatchSequenceSupersedeEarlier 屬性不會新增至 QFE 或小型更新修補程式。

    注意

    Service Pack (SP) 應該包含之前發行之所有 IDE 的修正程式。 不過,如果修補程式作者將SEQUENCE_DATA_SUPERSEDENCE屬性設定為 0 (零) 或 1 (.pcp 檔案中的一) ,MsiPatchSequence 資料表中所有資料列的 Attributes 資料行會設定為針對 SEQUENCE_DATA_SUPERSEDENCE指定的值。 需要更多控制權的修補程式作者必須手動撰寫 [屬性] 資料行。

     

如果您在 .pcp 檔案中包含 PatchSequence Table ,則會忽略 SEQUENCE_DATA_GENERATION_DISABLED 屬性,而且 PatchSequence 資料表中提供的資訊可以新增至修補程式的 MsiPatchSequence 資料表