Freigeben über


MsiEnumPatchesW-Funktion (msi.h)

Die MsiEnumPatches--Funktion listet alle Patches auf, die auf ein Produkt angewendet wurden. Die Funktion gibt die Patchcode-GUID für jeden Patch zurück, der auf das Produkt angewendet wurde, und gibt eine Liste der Transformationen aus jedem Patch zurück, der für das Produkt gilt. Beachten Sie, dass Patches möglicherweise nur einige Transformationen aufweisen, die für ein bestimmtes Produkt gelten. Die Liste der Transformationen wird im gleichen Format zurückgegeben wie der Wert der TRANSFORMS-Eigenschaft.

HinweispcchTransformsBuf nicht auf die Anzahl der Zeichen festgelegt ist, die in lpTransformsBuf bei erfolgreicher Rückgabe von MsiEnumPatcheskopiert wurden.
 

Syntax

UINT MsiEnumPatchesW(
  [in]      LPCWSTR szProduct,
  [in]      DWORD   iPatchIndex,
  [out]     LPWSTR  lpPatchBuf,
  [out]     LPWSTR  lpTransformsBuf,
  [in, out] LPDWORD pcchTransformsBuf
);

Parameter

[in] szProduct

Gibt den Produktcode des Produkts an, für das Patches aufgezählt werden sollen.

[in] iPatchIndex

Gibt den Index des abzurufenden Patches an. Dieser Parameter sollte für den ersten Aufruf der MsiEnumPatches-Funktion null sein und dann für nachfolgende Aufrufe erhöht werden.

[out] lpPatchBuf

Zeigen Sie auf einen Puffer, der die GUID des Patches empfängt. Dieses Argument ist erforderlich.

[out] lpTransformsBuf

Zeigen Sie auf einen Puffer, der die Liste der Transformationen im Patch empfängt, die für das Produkt gelten. Dieses Argument ist erforderlich und darf nicht Null sein.

[in, out] pcchTransformsBuf

Legen Sie die Anzahl der In lpTransformsBuf kopierten Zeichen fest, bei einer erfolglosen Rückgabe der Funktion. Für eine erfolgreiche Rückgabe nicht festgelegt. Bei eingaben ist dies die vollständige Größe des Puffers, einschließlich eines Leerzeichens für ein endendes NULL-Zeichen. Wenn der übergebene Puffer zu klein ist, enthält die zurückgegebene Anzahl nicht das endende Nullzeichen.

Rückgabewert

Wert Bedeutung
ERROR_BAD_CONFIGURATION
Die Konfigurationsdaten sind beschädigt.
ERROR_INVALID_PARAMETER
An die Funktion wurde ein ungültiger Parameter übergeben.
ERROR_NO_MORE_ITEMS
Es gibt keine Patches, die zurückgegeben werden sollen.
ERROR_SUCCESS
Ein Wert wurde aufgezählt.
ERROR_MORE_DATA
Ein Puffer ist zu klein, um die angeforderten Daten zu speichern.

Bemerkungen

Zum Aufzählen von Patches sollte eine Anwendung zunächst die MsiEnumPatches--Funktion aufrufen, wobei der iPatchIndex-Parameter auf Null festgelegt ist. Die Anwendung sollte dann den iPatchIndex Parameter inkrementieren und MsiEnumPatches- aufrufen, bis keine weiteren Produkte vorhanden sind (bis die Funktion ERROR_NO_MORE_ITEMS zurückgibt).

Wenn der Puffer zu klein ist, um die angeforderten Daten zu speichern, gibt MsiEnumPatches ERROR_MORE_DATA zurück, und pcchTransformsBuf enthält die Anzahl der Zeichen, die in lpTransformsBufkopiert wurden, ohne das Null-Zeichen zu zählen.

Anmerkung

Der msi.h-Header definiert MsiEnumPatches 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. Informationen zum mindestens von einer Windows Installer-Version erforderlichen Windows-Service Pack finden Sie unter den Windows Installer-Run-Time Anforderungen.
Zielplattform- Fenster
Header- msi.h
Library Msi.lib
DLL- Msi.dll