Fungsi MsiExtractPatchXMLDataA (msi.h)

Fungsi MsiExtractPatchXMLData mengekstrak informasi dari patch yang dapat digunakan untuk menentukan apakah patch berlaku untuk sistem target. Fungsi mengembalikan string XML yang dapat disediakan untuk MsiDeterminePatchSequence dan MsiDetermineApplicablePatches alih-alih file patch lengkap. Informasi yang dikembalikan dapat digunakan untuk menentukan apakah patch berlaku.

Sintaks

UINT MsiExtractPatchXMLDataA(
  [in]                LPCSTR  szPatchPath,
  [in]                DWORD   dwReserved,
  [out, optional]     LPSTR   szXMLData,
  [in, out, optional] LPDWORD pcchXMLData
);

Parameter

[in] szPatchPath

Jalur lengkap ke patch yang sedang dikueri. Meneruskan sebagai string yang dihentikan null. Parameter ini tidak boleh NULL.

[in] dwReserved

Argumen khusus yang harus 0 (nol).

[out, optional] szXMLData

Penunjuk ke buffer untuk menahan string XML yang berisi informasi patch yang diekstrak. Buffer ini harus cukup besar untuk memuat informasi yang diterima. Jika buffer terlalu kecil, fungsi mengembalikan ERROR_MORE_DATA dan mengatur *pcchXMLData ke jumlah TCHAR dalam nilai, tidak termasuk karakter NULL yang mengakhiri.

Jika szXMLData diatur ke NULL dan pcchXMLData diatur ke penunjuk yang valid, fungsi mengembalikan ERROR_SUCCESS dan mengatur *pcchXMLData ke jumlah TCHAR dalam nilai, tidak termasuk karakter NULL yang mengakhiri. Fungsi kemudian dapat dipanggil lagi untuk mengambil nilai, dengan buffer szXMLData cukup besar untuk berisi *pcchXMLData + 1 karakter.

[in, out, optional] pcchXMLData

Penunjuk ke variabel yang menentukan jumlah TCHAR dalam buffer szXMLData . Ketika fungsi kembali, parameter ini diatur ke ukuran nilai yang diminta apakah fungsi menyalin nilai ke dalam buffer yang ditentukan atau tidak. Ukuran dikembalikan sebagai jumlah TCHAR dalam nilai yang diminta, tidak termasuk karakter null yang mengakhiri.

Jika parameter ini diatur ke NULL, fungsi mengembalikan ERROR_INVALID_PARAMETER.

Nilai kembali

Fungsi MsiExtractPatchXMLData dapat mengembalikan nilai berikut.

Menampilkan kode Deskripsi
ERROR_FUNCTION_FAILED
Fungsi gagal dengan cara yang tidak diidentifikasi oleh salah satu nilai yang dikembalikan dalam tabel ini.
ERROR_INVALID_PARAMETER
Parameter yang tidak valid diteruskan ke fungsi.
ERROR_MORE_DATA
Nilai tidak cocok dalam buffer yang disediakan.
ERROR_PATCH_OPEN_FAILED
File patch tidak dapat dibuka.
ERROR_SUCCESS
Fungsi berhasil.
ERROR_PATCH_PACKAGE_INVALID
File patch tidak dapat dibuka.
ERROR_CALL_NOT_IMPLEMENTED
Kesalahan ini dapat dikembalikan jika MSXML 3.0 tidak diinstal.

Keterangan

Metode ExtractPatchXMLData dari objek Penginstal menggunakan fungsi MsiExtractPatchXMLData .

Catatan

Header msi.h mendefinisikan MsiExtractPatchXMLData 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 4.0 atau Windows Installer 4.5 di Windows Server 2008 atau Windows Vista. Windows Installer 3.0 atau yang lebih baru 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

MsiDetermineApplicablePatches

MsiDeterminePatchSequence

Tidak Didukung di Windows Installer 2.0 dan yang lebih lama