Fungsi MsiGetProductInfoExW (msi.h)
Fungsi MsiGetProductInfoEx mengembalikan informasi produk untuk produk yang diiklankan dan diinstal. Fungsi ini dapat mengambil informasi
tentang instans produk yang diinstal di bawah akun pengguna selain pengguna saat ini.
Proses panggilan harus memiliki hak administratif untuk pengguna yang berbeda dari pengguna saat ini. Fungsi MsiGetProductInfoEx tidak dapat meminta instans produk yang diiklankan di bawah konteks per pengguna yang tidak dikelola untuk akun pengguna selain pengguna saat ini.
Fungsi ini adalah ekstensi fungsi
Sintaksis
UINT MsiGetProductInfoExW(
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szProperty,
[out, optional] LPWSTR szValue,
[in, out, optional] LPDWORD pcchValue
);
Parameter
[in] szProductCode
ProductCode GUID instans produk yang sedang dikueri.
[in] szUserSid
Pengidentifikasi keamanan (SID) akun tempat instans produk yang sedang dikueri ada. NULL menentukan SID pengguna saat ini.
SID | Arti |
---|---|
|
Pengguna yang saat ini masuk. |
|
Enumerasi untuk pengguna tertentu dalam sistem. Contoh SID pengguna adalah "S-1-3-64-2415071341-1358098788-3127455600-2561". |
[in] dwContext
Konteks penginstalan instans produk yang sedang dikueri.
[in] szProperty
Properti sedang dikueri.
Properti yang akan diambil. Properti dalam tabel berikut ini hanya dapat diambil dari aplikasi yang sudah diinstal. Semua properti yang diperlukan dijamin tersedia, tetapi properti lain hanya tersedia jika properti diatur. Untuk informasi selengkapnya, lihat
Properti yang Diperlukan dan properti .
Harta benda | Arti |
---|---|
|
Status produk yang dikembalikan dalam bentuk string sebagai "1" untuk diiklankan dan "5" untuk diinstal. |
|
Tautan dukungan. Untuk informasi selengkapnya, lihat properti ARPHELPLINK |
|
Telepon dukungan. Untuk informasi selengkapnya, lihat properti ARPHELPTELEPHONE |
|
Terakhir kali produk ini menerima layanan. Nilai properti ini diganti setiap kali patch diterapkan atau dihapus dari produk atau opsi Command-Line /v digunakan untuk memperbaiki produk. Jika produk tidak menerima perbaikan atau patch properti ini berisi waktu produk ini diinstal pada komputer ini. |
|
Bahasa terinstal.
Windows Installer 4.5 danyang lebih lama: Tidak didukung. |
|
Nama produk yang diinstal. Untuk informasi selengkapnya, lihat properti ProductName. |
|
Lokasi penginstalan. Untuk informasi selengkapnya, lihat properti |
|
Sumber penginstalan. Untuk informasi selengkapnya, lihat properti SourceDir |
|
Paket cache lokal. |
|
Penerbit. Untuk informasi selengkapnya, lihat properti Produsen |
|
Informasi URL. Untuk informasi selengkapnya, lihat properti ARPURLINFOABOUT. |
|
Informasi pembaruan URL. Untuk informasi selengkapnya, lihat properti ARPURLUPDATEINFO |
|
Versi produk minor yang berasal dari properti ProductVersion |
|
Versi produk utama yang berasal dari properti |
|
Versi produk. Untuk informasi selengkapnya, lihat properti ProductVersion |
Untuk mengambil ID produk, pemilik terdaftar, atau perusahaan terdaftar dari aplikasi yang diinstal, atur szProperty ke salah satu nilai string teks berikut.
Nilai | Deskripsi |
---|---|
ProductID | Pengidentifikasi produk. Untuk informasi selengkapnya, lihat properti |
RegCompany | Perusahaan yang terdaftar untuk menggunakan produk. |
RegOwner | Pemilik yang terdaftar untuk menggunakan produk. |
Untuk mengambil jenis instans produk, atur szProperty ke nilai berikut. Properti ini tersedia untuk produk yang diiklankan atau diinstal.
Nilai | Deskripsi |
---|---|
InstanceType | Nilai yang hilang atau nilai 0 (nol) menunjukkan penginstalan produk normal. Nilai satu (1) menunjukkan produk yang diinstal menggunakan transformasi beberapa instans dan properti MSINEWINSTANCE. Untuk informasi selengkapnya, lihat Menginstal Beberapa Instans Produk dan Patch. |
Properti dalam tabel berikut dapat diambil dari aplikasi yang diiklankan atau diinstal. Properti ini tidak dapat diambil untuk instans produk yang diinstal di bawah konteks per pengguna yang tidak dikelola untuk akun pengguna selain akun pengguna saat ini.
Harta benda | Deskripsi |
---|---|
INSTALLPROPERTY_TRANSFORMS | Mengubah. |
INSTALLPROPERTY_LANGUAGE | Bahasa produk. |
INSTALLPROPERTY_PRODUCTNAME | Nama produk yang dapat dibaca manusia. Untuk informasi selengkapnya, lihat properti ProductName. |
INSTALLPROPERTY_ASSIGNMENTTYPE | Sama dengan 0 (nol) jika produk diiklankan atau diinstal per pengguna.
Sama dengan satu (1) jika produk diiklankan atau diinstal per komputer untuk semua pengguna. |
INSTALLPROPERTY_PACKAGECODE | Pengidentifikasi paket tempat produk diinstal. Untuk informasi selengkapnya, lihat properti Kode Paket |
INSTALLPROPERTY_VERSION | Versi produk berasal dari properti ProductVersion |
INSTALLPROPERTY_PRODUCTICON | Ikon utama untuk paket. Untuk informasi selengkapnya, lihat properti |
INSTALLPROPERTY_PACKAGENAME | Nama paket penginstalan asli. |
INSTALLPROPERTY_AUTHORIZED_LUA_APP | Nilai satu (1) menunjukkan produk yang dapat dilayani oleh non-administrator menggunakan Patching Kontrol Akun Pengguna (UAC). Nilai yang hilang atau nilai 0 (nol) menunjukkan bahwa patching hak istimewa paling sedikit tidak diaktifkan. Tersedia di Windows Installer 3.0 atau yang lebih baru. |
[out, optional] szValue
Penunjuk ke buffer yang menerima nilai properti. Buffer ini harus cukup besar untuk berisi informasi. Jika buffer terlalu kecil, fungsi mengembalikan ERROR_MORE_DATA dan mengatur *pcchValue ke jumlah TCHAR dalam nilai, tidak termasuk karakter NULL yang mengakhiri.
Jika lpValue
Jika lpValue dan pcchValue keduanya diatur ke NULL, fungsi mengembalikan ERROR_SUCCESS jika nilai ada, tanpa mengambil nilai.
[in, out, optional] pcchValue
Penunjuk ke variabel yang menentukan jumlah
Parameter ini dapat diatur ke null hanya jika lpValue juga NULL. Jika tidak, fungsi mengembalikan ERROR_INVALID_PARAMETER.
Mengembalikan nilai
Fungsi MsiGetProductInfoEx mengembalikan nilai berikut.
Mengembalikan kode | Deskripsi |
---|---|
|
Proses panggilan harus memiliki hak administratif untuk mendapatkan informasi produk yang diinstal untuk pengguna selain pengguna saat ini. |
|
Data konfigurasi rusak. |
|
Parameter yang tidak valid diteruskan ke fungsi . |
|
Buffer terlalu kecil untuk menyimpan data yang diminta. |
|
Fungsi berhasil diselesaikan. |
|
Produk tidak terverihkan atau dihapus instalasinya. |
|
Properti tidak dikenali.
|
|
Kegagalan internal yang tidak terduga. |
Komentar
Saat fungsi MsiGetProductInfoEx kembali, parameter pcchValue berisi panjang string yang disimpan dalam buffer. Jumlah yang dikembalikan tidak menyertakan karakter null yang dihentikan. Jika buffer tidak cukup besar,
Fungsi MsiGetProductInfoEx (INSTALLPROPERTY_LOCALPACKAGE) mengembalikan jalur ke paket yang di-cache. Paket cache hanya untuk penggunaan internal. Penginstalan mode pemeliharaan harus dipanggil melalui fungsi MsiConfigureFeature, MsiConfigureProduct, atau MsiConfigureProductEx.
Fungsi MsiGetProductInfo mengembalikan ERROR_UNKNOWN_PROPERTY jika aplikasi yang dikueri diiklankan dan tidak diinstal. Misalnya, jika aplikasi diiklankan dan tidak diinstal, kueri untuk INSTALLPROPERTY_INSTALLLOCATION mengembalikan kesalahan ERROR_UNKNOWN_PROPERTY.
Nota
Header msi.h mendefinisikan MsiGetProductInfoEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosem UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows Installer 5.0 di Windows Server 2012, Windows 8, Windows Server 2008 R2 atau Windows 7. Windows Installer 4.0 atau Windows Installer 4.5 pada Windows Server 2008 atau Windows Vista. Lihat Persyaratan Run-Time Penginstal Windows untuk informasi tentang paket layanan Windows minimum yang diperlukan oleh versi Penginstal Windows. |
Platform Target |
Windows |
Header |
msi.h |
Pustaka |
Msi.lib |
DLL |
Msi.dll |
Lihat juga
ARPHELPLINK
ARPHELPTELEPHONE
Produsen
Tidak Didukung di Windows Installer 2.0 dan yang lebih lama
Kode Paket
ProductCode
ProductID
ProductVersion
Properti
Properti yang Diperlukan