Fungsi MsiEnumComponentsA (msi.h)
Fungsi MsiEnumComponents menghitung komponen yang diinstal untuk semua produk. Fungsi ini mengambil satu kode komponen setiap kali dipanggil.
Sintaks
UINT MsiEnumComponentsA(
[in] DWORD iComponentIndex,
[out] LPSTR lpComponentBuf
);
Parameter
[in] iComponentIndex
Menentukan indeks komponen yang akan diambil. Parameter ini harus nol untuk panggilan pertama ke fungsi MsiEnumComponents lalu dinaikkan untuk panggilan berikutnya. Karena komponen tidak diurutkan, komponen baru apa pun memiliki indeks arbitrer. Ini berarti bahwa fungsi dapat mengembalikan komponen dalam urutan apa pun.
[out] lpComponentBuf
Penunjuk ke buffer yang menerima kode komponen. Panjang buffer ini harus 39 karakter. 38 karakter pertama adalah untuk GUID, dan karakter terakhir adalah untuk karakter null yang mengakhiri.
Mengembalikan nilai
Nilai | Makna |
---|---|
|
Data konfigurasi rusak. |
|
Parameter yang tidak valid diteruskan ke fungsi. |
|
Tidak ada komponen untuk dikembalikan. |
|
Sistem tidak memiliki cukup memori untuk menyelesaikan operasi. Tersedia dengan Windows Server 2003. |
|
Nilai dijumlahkan. |
Keterangan
Untuk menghitung komponen, aplikasi awalnya harus memanggil fungsi MsiEnumComponents dengan parameter iComponentIndex diatur ke nol. Aplikasi kemudian harus menaikkan parameter iComponentIndex dan memanggil MsiEnumComponents sampai tidak ada lagi komponen (yaitu, sampai fungsi kembali ERROR_NO_MORE_ITEMS).
Saat melakukan beberapa panggilan ke MsiEnumComponents untuk menghitung semua komponen produk, setiap panggilan harus dilakukan dari utas yang sama.
Catatan
Header msi.h mendefinisikan MsiEnumComponents sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor 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
Persyaratan | 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 di Windows Server 2008 atau Windows Vista. Pemasang Windows pada Windows Server 2003 atau Windows XP. Lihat Persyaratan Run-Time Penginstal Windows untuk informasi tentang paket layanan Windows minimum yang diperlukan oleh versi Pemasang Windows. |
Target Platform | Windows |
Header | msi.h |
Pustaka | Msi.lib |
DLL | Msi.dll |