Tabel MsiPatchSequence

Tabel MsiPatchSequence berisi semua informasi yang diperlukan alat penginstal untuk menentukan urutan aplikasi patch pembaruan kecil yang relatif terhadap semua patch lainnya. Tabel harus berada dalam database file patch dan bukan dalam transformasi dalam patch. Alat penginstal mengabaikan tabel ini saat menerapkan patch peningkatan utama . Saat menerapkan patch peningkatan kecil , alat penginstal hanya menggunakan tabel ini untuk mengidentifikasi patch pengganti yang tidak boleh diurutkan.

Tabel MsiPatchSequence memiliki kolom berikut.

Kolom Jenis Kunci Dapat diubah ke null
PatchFamily Pengidentifikasi Y N
ProductCode GUID Y Y
Urutan Versi N N
Atribut Bilangan bulat N Y

 

Kolom

PatchFamily

Menentukan bahwa patch adalah anggota keluarga patch bernama di bidang ini. Patch dalam keluarga patch yang sama yang menargetkan versi produk yang sama diurutkan berdasarkan nilai di kolom Urutan. Patch dalam keluarga patch diterapkan ke produk target dalam urutan yang meningkat. PatchFamily juga digunakan untuk menentukan patch mana yang akan digantikan. Patch dapat dicantumkan dalam beberapa baris dan termasuk dalam beberapa keluarga patch jika berlaku untuk lebih dari satu produk atau mencakup beberapa perbaikan.

Penginstal Windows tidak menginterpretasikan nilai PatchFamily dengan cara apa pun selain perbandingan untuk kesetaraan terhadap nilai PatchFamily lainnya. Nilai PatchFamily harus unik dalam ProductCode yang ditargetkan oleh serangkaian patch. Dalam skenario patching yang kompleks, pengidentifikasi PatchFamily mungkin perlu unik secara global.

ProductCode

Nilai dalam bidang ini bersifat opsional. Jika GUID kode produk dimasukkan di bidang ini dan patch sedang diterapkan ke produk yang ditentukan, patch diurutkan dan diterapkan sebagai anggota PatchFamily yang ditentukan. Jika GUID kode produk dimasukkan di bidang ini dan patch tidak diterapkan ke produk yang ditentukan oleh ProductCode, baris ini diabaikan. Jika nilai dalam ProductCode adalah NULL, patch diurutkan dan diterapkan sebagai anggota PatchFamily untuk semua target patch terlepas dari kode produk.

Patch dapat memiliki beberapa baris dalam PatchFamily yang sama dan ProductCode yang berbeda untuk setiap produk yang ditargetkan oleh patch. Satu baris untuk PatchFamily dapat menentukan NULL untuk ProductCode. Jika produk target cocok dengan baris dengan ProductCode non-NULL, penginstal menggunakan baris yang cocok dan mengabaikan baris dengan ProductCode NULL. Jika tidak ada kode produk yang ditentukan yang cocok dengan target, patch diurutkan dan diterapkan sebagai anggota PatchFamily untuk semua target patch terlepas dari kode produk.

Urutan

Nilai dalam kolom Urutan menentukan urutan patch ini dalam PatchFamily yang ditentukan. Nilai dalam Urutan dinyatakan dalam format Data versi . Nilai berisi antara 1 dan 4 bidang dan setiap bidang memiliki rentang 0 hingga 65535. Anggota PatchFamily diurutkan dan diterapkan ke produk target dalam urutan peningkatan nilai Urutan. Misalnya, enam nilai berikut meningkat: 1, 1,1, 1.2, 2.01, 2.01.1, 2.01.1.1.

Atribut

Kehadiran atribut msidbPatchSequenceSupersedeEarlier dalam baris menunjukkan bahwa patch pembaruan kecil menggantikan pembaruan yang disediakan oleh semua patch dengan nilai Urutan yang lebih rendah dalam PatchFamily yang sama. Patch ini berisi semua perbaikan yang disediakan oleh patch sebelumnya dalam PatchFamily yang ditentukan. Atribut ini tidak berarti bahwa patch ini menggantikan patch sebelumnya dalam semua kasus karena patch sebelumnya dapat dimiliki oleh beberapa keluarga patch.

Patch pembaruan kecil tidak dapat menggantikan peningkatan kecil atau patch peningkatan utama dalam keadaan apa pun, bahkan jika msidbPatchSequenceSupersedeEarlier diatur.

Nama Nilai Makna
0x00 Menunjukkan nilai urutan sederhana.
msidbPatchSequenceSupersedeEarlier 0x01 Menunjukkan patch yang menggantikan patch sebelumnya dalam keluarga ini.

 

Validasi

ICE03
ICE06

Tidak Didukung di Windows Installer 2.0 dan yang lebih lama