Fungsi MsiRecordGetStringA (msiquery.h)
Fungsi MsiRecordGetString mengembalikan nilai string bidang rekaman.
Sintaks
UINT MsiRecordGetStringA(
[in] MSIHANDLE hRecord,
[in] UINT iField,
[out] LPSTR szValueBuf,
[in, out] LPDWORD pcchValueBuf
);
Parameter
[in] hRecord
Tangani ke rekaman.
[in] iField
Menentukan bidang yang diminta.
[out] szValueBuf
Penunjuk ke buffer yang menerima string null yang dihentikan yang berisi nilai bidang rekaman. Jangan mencoba menentukan ukuran buffer dengan meneruskan null (value=0) untuk szValueBuf. Anda bisa mendapatkan ukuran buffer dengan meneruskan string kosong (misalnya ""). Fungsi kemudian mengembalikan ERROR_MORE_DATA dan pcchValueBuf berisi ukuran buffer yang diperlukan dalam TCHAR, tidak termasuk karakter null yang mengakhiri. Pada pengembalian ERROR_SUCCESS, pcchValueBuf berisi jumlah TCHAR yang ditulis ke buffer, tidak termasuk karakter null yang mengakhiri.
[in, out] pcchValueBuf
Penunjuk ke variabel yang menentukan ukuran, dalam TCHARs, dari buffer yang diacu oleh variabel szValueBuf. Ketika fungsi mengembalikan ERROR_SUCCESS, variabel ini berisi ukuran data yang disalin ke szValueBuf, tidak termasuk karakter null yang mengakhiri. Jika szValueBuf tidak cukup besar, fungsi mengembalikan ERROR_MORE_DATA dan menyimpan ukuran yang diperlukan, tidak termasuk karakter null yang mengakhiri, dalam variabel yang ditunjukkan oleh pcchValueBuf.
Mengembalikan nilai
Fungsi MsiRecordGetString mengembalikan salah satu nilai berikut:
Keterangan
Jika ERROR_MORE_DATA dikembalikan, parameter yang merupakan penunjuk memberikan ukuran buffer yang diperlukan untuk menahan string. Jika ERROR_SUCCESS dikembalikan, itu memberikan jumlah karakter yang ditulis ke buffer string. Untuk mendapatkan ukuran buffer, berikan alamat buffer 1 karakter sebagai szValueBuf dan tentukan ukuran buffer dengan pcchValueBuf sebagai 0. Ini memastikan bahwa tidak ada nilai string yang dikembalikan oleh fungsi yang sesuai dengan buffer. Jangan mencoba menentukan ukuran buffer dengan meneruskan Null (value=0).
Catatan
Header msiquery.h mendefinisikan MsiRecordGetString 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. |
Target Platform | Windows |
Header | msiquery.h |
Pustaka | Msi.lib |
DLL | Msi.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk