Mengubah Kode Produk
Kode produk adalah GUID yang merupakan identifikasi utama aplikasi atau produk. Lihat Kode Produk.
Pembaruan yang memenuhi panduan berikut umumnya tidak memerlukan perubahan kode produk dan dapat ditangani sebagai pembaruan kecil, atau jika versinya berubah, sebagai peningkatan kecil :
- Pembaruan dapat memperbesar atau mengurangi pohon komponen fitur tetapi tidak boleh mengatur ulang hierarki fitur dan komponen yang ada yang dijelaskan oleh Fitur dan FeatureComponents tabel. Ini dapat menambahkan fitur baru ke pohon komponen fitur yang ada. Jika menghapus fitur induk, fitur tersebut juga harus menghapus semua fitur turunan dari fitur yang dihapus.
- Pembaruan dapat menambahkan komponen baru ke fitur baru atau yang sudah ada.
- Pembaruan tidak boleh mengubah kode komponen komponen apa pun. Akibatnya, pembaruan kecil atau peningkatan kecil tidak boleh mengubah nama file kunci komponen karena ini akan memerlukan perubahan kode komponen.
- Pembaruan tidak boleh mengubah nama file .msi paket penginstalan. Sebaliknya, karena paket dimodifikasi, kode paket harus diubah. Perhatikan bahwa ini berarti bahwa pembaruan dapat mengubah tabel, tindakan kustom, dan dialog dalam file .msi tanpa mengubah nama file.
- Pembaruan dapat menambahkan, menghapus, atau memodifikasi file, kunci registri, atau pintasan komponen yang tidak dibagikan oleh dua fitur atau lebih. Jika pembaruan memodifikasi file yang memiliki versi, nomor versi file tersebut harus ditingkatkan di tabel File . Jika pembaruan menghapus sumber daya, pembaruan juga harus memperbarui RemoveFile dan Tabel RemoveRegistry untuk menghapus file, kunci registri, atau pintasan yang tidak digunakan yang telah diinstal.
- Pembaruan komponen yang digunakan bersama oleh dua fitur atau lebih harus kompatibel dengan versi sebelumnya untuk semua aplikasi dan fitur yang menggunakan komponen tersebut. Pembaruan dapat mengubah sumber daya dari komponen yang dibagikan, seperti file, entri registri, dan pintasan, asalkan perubahan tersebut tetap kompatibel dengan versi sebelumnya. Tidak disarankan agar pembaruan menambahkan atau menghapus file, entri registri, atau pintasan dari komponen bersama.
- Pembaruan kecil dikirim sebagai paket patch Pemasang Windows. (Produk lengkap CD-ROM biasanya tidak disediakan dengan pembaruan kecil.)
Kode produk harus diubah jika salah satu hal berikut ini benar untuk pembaruan:
- Penginstalan yang berdampingan dari produk asli dan yang diperbarui pada sistem yang sama harus dimungkinkan.
- Nama file .msi telah diubah.
- Kode komponen komponen yang ada telah berubah.
- Komponen dihapus dari fitur yang ada.
- Fitur yang sudah ada telah dijadikan turunan dari fitur lain yang sudah ada.
- Fitur anak yang ada telah dihapus dari fitur induknya.
Perhatikan bahwa menambahkan fitur anak baru, yang sepenuhnya terdiri dari komponen baru, ke fitur yang ada tidak memerlukan perubahan kode produk.
Fitur anak baru dapat ditulis dengan menyertakan msidbFeatureAttributesFollowParent dan msidbFeatureAttributesUIDisallowAbsent di bidang Atribut tabel Fitur . Jika peningkatan kecil hanya menambahkan fitur turunan baru, maka REINSTALL=ALL sudah cukup untuk memaksa penginstalan fitur turunan yang baru. Untuk informasi selengkapnya, lihat Mengontrol Status Pilihan Fitur.
Fitur anak baru mungkin disembunyikan dari pengguna. Untuk menyinkronkan status penginstalan fitur anak baru dengan fitur induknya, atur bit msidbFeatureAttributesFollowParent dan msidbFeatureAttributesUIDisallowAbsent untuk fitur anak.
Topik terkait