Freigeben über


MsiEnumComponentsA-Funktion (msi.h)

Die MsiEnumComponents Funktion listet die installierten Komponenten für alle Produkte auf. Diese Funktion ruft bei jedem Aufruf einen Komponentencode ab.

Syntax

UINT MsiEnumComponentsA(
  [in]  DWORD iComponentIndex,
  [out] LPSTR lpComponentBuf
);

Parameter

[in] iComponentIndex

Gibt den Index der abzurufenden Komponente an. Dieser Parameter sollte für den ersten Aufruf der MsiEnumComponents Funktion null sein und dann für nachfolgende Aufrufe erhöht werden. Da Komponenten nicht sortiert sind, weist jede neue Komponente einen beliebigen Index auf. Dies bedeutet, dass die Funktion Komponenten in beliebiger Reihenfolge zurückgeben kann.

[out] lpComponentBuf

Zeigen Sie auf einen Puffer, der den Komponentencode empfängt. 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 sind keine Komponenten vorhanden, die zurückgegeben werden sollen.
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 Komponenten sollte eine Anwendung zunächst die MsiEnumComponents--Funktion aufrufen, wobei der iComponentIndex Parameter auf Null festgelegt ist. Die Anwendung sollte dann den iComponentIndex Parameter inkrementieren und MsiEnumComponents- aufrufen, bis keine weiteren Komponenten vorhanden sind (d. h., bis die Funktion ERROR_NO_MORE_ITEMS zurückgibt).

Wenn Sie mehrere Aufrufe an MsiEnumComponents ausführen, alle Komponenten des Produkts aufzählen, sollte jeder Aufruf aus demselben Thread erfolgen.

Anmerkung

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

Systemstatusfunktionen