Temukan GUID Paket MSI

16

Bagaimana saya bisa menemukan GUID paket MSI? Saya ingin membuat skrip penghapusan program di sejumlah besar desktop dengan menggunakan:

msiexec.exe / x ProductCode

Ada alasan mengapa ini tidak akan bekerja untuk aplikasi apa pun yang tercantum dalam "Tambah / Hapus Program?"

SturdyErde
sumber
Sebagai catatan: Bagaimana saya bisa menemukan GUID produk dari pengaturan MSI yang diinstal? (asalkan pengaturan diinstal pada mesin itu sendiri - jika tidak mendapatkan Orca dari Windows SDK atau alat kemasan lain ).
Stein Åsmul

Jawaban:

15

UPDATE : Coba jawab ini stackoverflow.com: Bagaimana saya bisa menemukan GUID produk dari pengaturan MSI yang diinstal? atau bahkan yang ini: Temukan GUID Dari File MSI .


The SDK Windows alat Orca akan memungkinkan Anda untuk membuka dan melihat semua tabel dalam file MSI. Setelah MSI terbuka, Anda dapat menavigasi ke tabel Properti dan mencari entri "kode produk", atau Anda dapat memilih "Lihat => Informasi Ringkasan ..." dan mencari entri "kode paket". Baik paket atau panduan produk dapat digunakan untuk menghapus instalasi.

Lihat tangkapan layar Orca tentang cara menemukan kode produk di MSI: WiX - Melakukan peningkatan besar pada pemasangan multi instance

Ada juga cara lain untuk menemukan GUID:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall

HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall

Tampaknya Anda masih harus mengunduh MSI SDK untuk mendapatkan Orca. Jika Anda tidak memiliki akses ke Orca dan tidak dapat repot mengunduh SDK, setiap penampil yang mampu membaca file database MSSQL (file penyimpanan berstruktur com), harus dapat membuka file MSI dan melihat kontennya. Buat salinan MSI sebelum membukanya di penampil dan buka salinannya. Hanya untuk memastikan. Setelah terbuka, Anda menavigasi ke tabel Properti dan mencari GUID produk.

PEMBARUAN : Daftar pemirsa MSI gratis (menuju bagian bawah) .

Periksa juga posting ini di stackoverflow.com dengan informasi tentang cara menghapus instalasi melalui Powershell :

Stein Åsmul
sumber
Ini bisa menjadi kerumitan nyata untuk mendapatkan Orca.exe karena hanya tersedia sebagai bagian dari SDK. Jika ada yang terburu-buru, saya senang mengirimkan salinan kepada Anda melalui email. Saat ini Microsoft tampaknya hanya menyediakannya dalam SDK lengkap: microsoft.com/downloads/en/… . Tapi seperti yang Anda tahu Microsoft mengubah banyak hal hampir setiap hari.
Stein Åsmul
SDK juga cukup mudah didapat ... tetapi Anda harus mengunduh lebih banyak. Pencarian juga dapat mengaktifkan editor MSI lainnya, seperti InstEdit.
SturdyErde
Anda dapat menggunakan SuperOrca, bukan Orca. Melakukan hal yang sama dan lebih mudah ditangkap.
Grimtech
Sejak HKEY_CLASSES_ROOTgabungan ist dari HKLM:\SOFTWARE\Classesdan HKCU:\SOFTWARE\Classesyang HKEY_CLASSES_ROOT\Installer\Products Resides sebenarnya di HKLM:\SOFTWARE\Classes\Installer\Productsresp. mungkin HKCUrekannya.
TNT
7

Ini adalah kunci registri:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{<guid>}

atau jika platform x64 dan aplikasi 32-bit:

HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{<guid>}
Greg Askew
sumber
Bukan hanya itu, tetapi perintah msiexec sebenarnya terkandung dalam subkunci, "UninstallString!"
dpurrington
2

Alat freeware ringan seperti InstEd dapat digunakan. Cukup buka MSI, pada tab "Tables", klik "Property" di sebelah kiri, lalu di kanan, cari "ProductCode".

Bryan Vine
sumber
1

Properti Ringkasan Nomor Revisi :

[T] dia properti Ringkasan Nomor Revisi daftar kode produk GUID [...]

medina
sumber
Itu jawaban yang cukup samar, tetapi saya memang menemukan apa yang Anda maksudkan. Terima kasih
SturdyErde