Freigeben über


MsiCreateTransformSummaryInfoW-Funktion (msiquery.h)

Die MsiCreateTransformSummaryInfo--Funktion erstellt zusammenfassungsinformationen einer vorhandenen Transformation, um Validierungs- und Fehlerbedingungen einzuschließen. Die Ausführung dieser Funktion legt den Fehlerdatensatz fest, auf den über MsiGetLastErrorRecordzugegriffen werden kann.

Syntax

UINT MsiCreateTransformSummaryInfoW(
  [in] MSIHANDLE hDatabase,
  [in] MSIHANDLE hDatabaseReference,
  [in] LPCWSTR   szTransformFile,
  [in] int       iErrorConditions,
  [in] int       iValidation
);

Parameter

[in] hDatabase

Das Handle für die Datenbank, die die neuen Datenbankzusammenfassungsinformationen enthält.

[in] hDatabaseReference

Das Handle für die Datenbank, die die ursprünglichen Zusammenfassungsinformationen enthält.

[in] szTransformFile

Der Name der Transformation, der die Zusammenfassungsinformationen hinzugefügt werden.

[in] iErrorConditions

Die Fehlerbedingungen, die unterdrückt werden sollen, wenn die Transformation angewendet wird. Verwenden Sie einen oder mehrere der folgenden Werte.

Fehlerzustand Bedeutung
keine
0x00000000
Keine der folgenden Bedingungen.
MSITRANSFORM_ERROR_ADDEXISTINGROW
0x00000001
Hinzufügen einer vorhandenen Zeile.
MSITRANSFORM_ERROR_DELMISSINGROW
0x00000002
Löschen einer Zeile, die nicht vorhanden ist.
MSITRANSFORM_ERROR_ADDEXISTINGTABLE
0x00000004
Hinzufügen einer tabelle, die vorhanden ist.
MSITRANSFORM_ERROR_DELMISSINGTABLE
0x00000008
Löschen einer Tabelle, die nicht vorhanden ist.
MSITRANSFORM_ERROR_UPDATEMISSINGROW
0x00000010
Aktualisieren einer Zeile, die nicht vorhanden ist.
MSITRANSFORM_ERROR_CHANGECODEPAGE
0x00000020
Transformations- und Datenbankcodeseiten stimmen nicht überein, und ihre Codeseiten sind neutral.

[in] iValidation

Gibt die zu überprüfenden Eigenschaften an, um zu überprüfen, ob die Transformation auf die Datenbank angewendet werden kann. Dieser Parameter kann einen oder mehrere der folgenden Werte sein.

Überprüfungskennzeichnung Bedeutung
keine
0x00000000
Eigenschaften nicht überprüfen.
MSITRANSFORM_VALIDATE_LANGUAGE
0x00000001
Die Standardsprache muss mit der Basisdatenbank übereinstimmen.
MSITRANSFORM_VALIDATE_PRODUCT
0x00000002
Das Produkt muss mit der Basisdatenbank übereinstimmen.
 

Überprüfen von Produktversionskennzeichnungen.

Überprüfungskennzeichnung Bedeutung
MSITRANSFORM_VALIDATE_MAJORVERSION
0x00000008
Nur Hauptversion überprüfen.
MSITRANSFORM_VALIDATE_MINORVERSION
0x00000010
Nur Haupt- und Nebenversionen überprüfen.
MSITRANSFORM_VALIDATE_UPDATEVERSION
0x00000020
Überprüfen Sie haupt-, Neben- und Updateversionen.
 

Produktversionsbeziehungskennzeichnungen. In der folgenden Tabelle ist die installierte Version die Version des Pakets, das transformiert wird, und die Basisversion ist die Version des Pakets, das zum Erstellen der Transformation verwendet wird.

Überprüfungskennzeichnung Bedeutung
MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION
0x00000040
Installierte Version < Basisversion.
MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION
0x00000080
Installierte Version <= Basisversion.
MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION
0x00000100
Installierte Version = Basisversion.
MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION
0x00000200
Installierte Version >= Basisversion.
MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION
0x00000400
Installierte Version > Basisversion.
 

Upgradecodeüberprüfungskennzeichnungen.

Überprüfungskennzeichnung Bedeutung
MSITRANSFORM_VALIDATE_UPGRADECODE
0x00000800
UpgradeCode muss mit der Basisdatenbank übereinstimmen.

Rückgabewert

Diese Funktion gibt UINT zurück.

Bemerkungen

Die ProductCode--Eigenschaft und ProductVersion--Eigenschaft müssen in der Eigenschaftentabelle der Basis- und Referenzdatenbank definiert werden. Wenn MSITRANSFORM_VALIDATE_UPGRADECODE verwendet wird, muss auch die UpgradeCode Property in beiden Datenbanken definiert werden. Wenn diese Bedingungen nicht erfüllt sind, gibt MsiCreateTransformSummaryInfo ERROR_INSTALL_PACKAGE_INVALID zurück.

  • Verwenden Sie das Semikolon nicht für Dateinamen oder Pfade, da es als Listentrennzeichen für Transformationen, Quellen und Patches verwendet wird.
  • Diese Funktion kann nicht aus benutzerdefinierten Aktionen aufgerufen werden. Ein Aufruf dieser Funktion aus einer benutzerdefinierten Aktion führt dazu, dass die Funktion fehlschlägt.

Anmerkung

Der msiquery.h-Header definiert MsiCreateTransformSummaryInfo als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Windows Installer unter Windows Server 2003 oder Windows XP
Zielplattform- Fenster
Header- msiquery.h
Library Msi.lib
DLL- Msi.dll

Siehe auch

Datenbanktransformationen

Eigenschaftensatz "Zusammenfassungsinformationen stream"