Freigeben über


MsiEnumFeaturesA-Funktion (msi.h)

Die MsiEnumFeatures Funktion listet die veröffentlichten Features für ein bestimmtes Produkt auf. Diese Funktion ruft bei jedem Aufruf eine Feature-ID ab.

Syntax

UINT MsiEnumFeaturesA(
  [in]  LPCSTR szProduct,
  [in]  DWORD  iFeatureIndex,
  [out] LPSTR  lpFeatureBuf,
  [out] LPSTR  lpParentBuf
);

Parameter

[in] szProduct

Null-beendete Zeichenfolge, die den Produktcode des Produkts angibt, dessen Features aufgezählt werden sollen.

[in] iFeatureIndex

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

[out] lpFeatureBuf

Zeigen Sie auf einen Puffer, der die Feature-ID empfängt. Die Größe des Puffers muss einen Zeichenfolgenwert der Länge MAX_FEATURE_CHARS+1 enthalten. Die Funktion gibt ERROR_MORE_DATA zurück, wenn die Länge der Feature-ID MAX_FEATURE_CHARSüberschreitet.

[out] lpParentBuf

Zeigen Sie auf einen Puffer, der die Feature-ID des übergeordneten Elements des Features empfängt. Die Größe des Puffers muss einen Zeichenfolgenwert der Länge MAX_FEATURE_CHARS+1 enthalten. Wenn die Länge der Feature-ID des übergeordneten Features MAX_FEATURE_CHARSüberschreitet, werden nur die ersten MAX_FEATURE_CHARS Zeichen in den Puffer kopiert.

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_MORE_DATA
Ein Puffer ist zu klein, um die angeforderten Daten zu speichern.
ERROR_NO_MORE_ITEMS
Es gibt keine Features, die zurückgegeben werden sollen.
ERROR_SUCCESS
Ein Wert wurde aufgezählt.
ERROR_UNKNOWN_PRODUCT
Das angegebene Produkt ist unbekannt.
 
 

Bemerkungen

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

Anmerkung

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