Freigeben über


MsiEnumRelatedProductsA-Funktion (msi.h)

Die MsiEnumRelatedProducts-Funktion listet Produkte mit einem angegebenen Upgradecode auf. Diese Funktion listet die aktuell installierten und angekündigten Produkte auf, die die angegebene UpgradeCode-eigenschaft Eigenschaft in der Property-Tabelleenthalten.

Syntax

UINT MsiEnumRelatedProductsA(
  [in]  LPCSTR lpUpgradeCode,
  [in]  DWORD  dwReserved,
  [in]  DWORD  iProductIndex,
  [out] LPSTR  lpProductBuf
);

Parameter

[in] lpUpgradeCode

Die mit Null beendete Zeichenfolge, die den Upgradecode verwandter Produkte angibt, die das Installationsprogramm aufzählt.

[in] dwReserved

Dieser Parameter ist reserviert und muss 0 sein.

[in] iProductIndex

Der nullbasierte Index in den registrierten Produkten.

[out] lpProductBuf

Ein Puffer zum Empfangen der Produktcode-GUID. Dieser Puffer muss 39 Zeichen lang sein. Die ersten 38 Zeichen sind für die GUID-und das letzte Zeichen für 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 Produkte zurückzugeben.
ERROR_NOT_ENOUGH_MEMORY
Das System verfügt nicht über genügend Arbeitsspeicher, um den Vorgang abzuschließen. Ab Windows Server 2003 verfügbar.
ERROR_SUCCESS
Ein Wert wurde aufgezählt.

Bemerkungen

Siehe UpgradeCode-Eigenschaft.

Um derzeit installierte und angekündigte Produkte aufzulisten, die über einen bestimmten Upgradecode verfügen, sollte eine Anwendung zunächst die MsiEnumRelatedProducts-funktion aufrufen, wobei der iProductIndex Parameter auf Null festgelegt ist. Die Anwendung sollte dann den iProductIndex Parameter erhöhen und MsiEnumRelatedProducts- aufrufen, bis die Funktion ERROR_NO_MORE_ITEMS zurückgibt, was bedeutet, dass es keine weiteren Produkte mit dem angegebenen Upgradecode gibt.

Wenn Sie mehrere Aufrufe an MsiEnumRelatedProducts durchführen, um alle zugehörigen Produkte auflisten zu können, sollte jeder Aufruf aus demselben Thread erfolgen.

Anmerkung

Der msi.h-Header definiert MsiEnumRelatedProducts 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