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
ERROR_BAD_CONFIGURATION
Data konfigurasi rusak.
ERROR_INVALID_PARAMETER
Parameter yang tidak valid diteruskan ke fungsi.
ERROR_NO_MORE_ITEMS
Tidak ada komponen untuk dikembalikan.
ERROR_NOT_ENOUGH_MEMORY
Sistem tidak memiliki cukup memori untuk menyelesaikan operasi. Tersedia dengan Windows Server 2003.
ERROR_SUCCESS
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

Lihat juga

Fungsi Status Sistem