Fungsi MsiCreateTransformSummaryInfoA (msiquery.h)

Fungsi MsiCreateTransformSummaryInfo membuat informasi ringkasan transformasi yang ada untuk menyertakan validasi dan kondisi kesalahan. Eksekusi fungsi ini mengatur catatan kesalahan, yang dapat diakses dengan menggunakan MsiGetLastErrorRecord.

Sintaks

UINT MsiCreateTransformSummaryInfoA(
  [in] MSIHANDLE hDatabase,
  [in] MSIHANDLE hDatabaseReference,
  [in] LPCSTR    szTransformFile,
  [in] int       iErrorConditions,
  [in] int       iValidation
);

Parameter

[in] hDatabase

Handel ke database yang berisi informasi ringkasan database baru.

[in] hDatabaseReference

Handel ke database yang berisi informasi ringkasan asli.

[in] szTransformFile

Nama transformasi tempat informasi ringkasan ditambahkan.

[in] iErrorConditions

Kondisi kesalahan yang harus ditekan ketika transformasi diterapkan. Gunakan satu atau beberapa nilai berikut.

Kondisi kesalahan Makna
Tidak ada
0x00000000
Tidak satu pun dari kondisi berikut.
MSITRANSFORM_ERROR_ADDEXISTINGROW
0x00000001
Menambahkan baris yang ada.
MSITRANSFORM_ERROR_DELMISSINGROW
0x00000002
Menghapus baris yang tidak ada.
MSITRANSFORM_ERROR_ADDEXISTINGTABLE
0x00000004
Menambahkan tabel yang ada.
MSITRANSFORM_ERROR_DELMISSINGTABLE
0x00000008
Menghapus tabel yang tidak ada.
MSITRANSFORM_ERROR_UPDATEMISSINGROW
0x00000010
Memperbarui baris yang tidak ada.
MSITRANSFORM_ERROR_CHANGECODEPAGE
0x00000020
Halaman transformasi dan kode database tidak cocok, dan halaman kodenya netral.

[in] iValidation

Menentukan properti yang akan divalidasi untuk memverifikasi bahwa transformasi dapat diterapkan ke database. Parameter ini bisa menjadi satu atau beberapa nilai berikut.

Bendera validasi Makna
Tidak ada
0x00000000
Jangan validasi properti.
MSITRANSFORM_VALIDATE_LANGUAGE
0x00000001
Bahasa default harus cocok dengan database dasar.
MSITRANSFORM_VALIDATE_PRODUCT
0x00000002
Produk harus cocok dengan database dasar.
 

Memvalidasi bendera versi produk.

Bendera validasi Makna
MSITRANSFORM_VALIDATE_MAJORVERSION
0x00000008
Periksa hanya versi utama.
MSITRANSFORM_VALIDATE_MINORVERSION
0x00000010
Periksa versi utama dan minor saja.
MSITRANSFORM_VALIDATE_UPDATEVERSION
0x00000020
Periksa versi utama, minor, dan pembaruan.
 

Bendera hubungan versi produk. Dalam tabel berikut, versi yang diinstal adalah versi paket yang sedang diubah, dan versi dasarnya adalah versi paket yang digunakan untuk membuat transformasi.

Bendera validasi Makna
MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION
0x00000040
Versi dasar versi < yang diinstal.
MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION
0x00000080
Versi terinstal <= versi dasar.
MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION
0x00000100
Versi terinstal = versi dasar.
MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION
0x00000200
Versi terinstal >= versi dasar.
MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION
0x00000400
Versi dasar versi > yang diinstal.
 

Meningkatkan bendera validasi kode.

Bendera validasi Makna
MSITRANSFORM_VALIDATE_UPGRADECODE
0x00000800
UpgradeCode harus cocok dengan database dasar.

Nilai kembali

Fungsi ini mengembalikan UINT.

Keterangan

Properti ProductCode dan Properti ProductVersion harus ditentukan dalam Tabel Properti dari database dasar dan referensi. Jika MSITRANSFORM_VALIDATE_UPGRADECODE digunakan, Properti UpgradeCode juga harus ditentukan di kedua database. Jika kondisi ini tidak terpenuhi, MsiCreateTransformSummaryInfo mengembalikan ERROR_INSTALL_PACKAGE_INVALID.

  • Jangan gunakan titik koma untuk nama file atau jalur, karena digunakan sebagai pemisah daftar untuk transformasi, sumber, dan patch.
  • Fungsi ini tidak dapat dipanggil dari tindakan kustom. Panggilan ke fungsi ini dari tindakan kustom menyebabkan fungsi gagal.

Catatan

Header msiquery.h mendefinisikan MsiCreateTransformSummaryInfo 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
Target Platform Windows
Header msiquery.h
Pustaka Msi.lib
DLL Msi.dll

Lihat juga

Transformasi Database

Informasi Ringkasan Stream Kumpulan Properti