Freigeben über


MsiEnumProductsA-Funktion (msi.h)

Die MsiEnumProducts Funktion listet alle aktuell angekündigten oder installierten Produkte auf. Produkte, die sowohl pro Benutzer als auch pro Computer installiert sind, Installationskontext und Werbung werden aufgezählt.

Syntax

UINT MsiEnumProductsA(
  [in]  DWORD iProductIndex,
  [out] LPSTR lpProductBuf
);

Parameter

[in] iProductIndex

Gibt den Index des abzurufenden Produkts an. Dieser Parameter sollte für den ersten Aufruf der MsiEnumProducts-Funktion null sein und dann für nachfolgende Aufrufe erhöht werden. Da Produkte nicht bestellt werden, hat jedes neue Produkt einen beliebigen Index. Dies bedeutet, dass die Funktion Produkte in beliebiger Reihenfolge zurückgeben kann.

[out] lpProductBuf

Zeigen Sie auf einen Puffer, der den Produktcode empfängt. Dieser Puffer muss 39 Zeichen lang sein. Die ersten 38 Zeichen gelten für die GUID, und das letzte Zeichen ist 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. Verfügbar mit Windows Server 2003.
ERROR_SUCCESS
Ein Wert wurde aufgezählt.

Bemerkungen

Zum Aufzählen von Produkten sollte eine Anwendung zunächst die MsiEnumProducts--Funktion aufrufen, wobei der iProductIndex-Parameter auf Null festgelegt ist. Die Anwendung sollte dann den iProductIndex Parameter erhöhen und MsiEnumProducts- aufrufen, bis keine Produkte mehr vorhanden sind (bis die Funktion ERROR_NO_MORE_ITEMS zurückgibt).

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

Anmerkung

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

Siehe auch

Bestimmen des Installationskontexts

Systemstatusfunktionen