Freigeben über


SetupDiEnumDriverInfoW-Funktion (setupapi.h)

Die SetupDiEnumDriverInfo Funktion listet die Member einer Treiberliste auf.

Syntax

WINSETUPAPI BOOL SetupDiEnumDriverInfoW(
  [in]           HDEVINFO           DeviceInfoSet,
  [in, optional] PSP_DEVINFO_DATA   DeviceInfoData,
  [in]           DWORD              DriverType,
  [in]           DWORD              MemberIndex,
  [out]          PSP_DRVINFO_DATA_W DriverInfoData
);

Parameter

[in] DeviceInfoSet

Ein Handle für den Geräteinformationssatz, der die zu aufzählende Treiberliste enthält.

[in, optional] DeviceInfoData

Ein Zeiger auf eine SP_DEVINFO_DATA Struktur, die ein Geräteinformationselement in DeviceInfoSet-angibt. Dieser Parameter ist optional und kann NULL-werden. Wenn dieser Parameter angegeben ist, SetupDiEnumDriverInfo eine Treiberliste für das angegebene Gerät aufzählt. Wenn dieser Parameter NULL-ist, SetupDiEnumDriverInfo listet die globale Klassentreiberliste auf, die DeviceInfoSet- zugeordnet ist (diese Liste ist vom Typ SPDIT_CLASSDRIVER).

[in] DriverType

Der Typ der zu enumerierenden Treiberliste, die einen der folgenden Werte sein muss:

SPDIT_CLASSDRIVER

Aufzählen einer Klassentreiberliste. Dieser Treiberlistentyp muss angegeben werden, wenn DeviceInfoData- nicht angegeben ist.

SPDIT_COMPATDRIVER

Auflisten einer Liste kompatibler Treiber für das angegebene Gerät. Dieser Treiberlistentyp kann nur angegeben werden, wenn DeviceInfoData- ebenfalls angegeben ist.

[in] MemberIndex

Der nullbasierte Index des abzurufenden Treiberinformationselements.

[out] DriverInfoData

Ein Zeiger auf eine vom Aufrufer initialisierte SP_DRVINFO_DATA Struktur, die Informationen über den aufgezählten Treiber empfängt. Der Aufrufer muss DriverInfoData festlegen.cbSizesizeof(SP_DRVINFO_DATA) vor dem Aufrufen SetupDiEnumDriverInfo. Wenn das cbSize Member nicht ordnungsgemäß festgelegt ist, gibt SetupDiEnumDriverInfo-FALSE-zurück.

Rückgabewert

Die Funktion gibt TRUE- zurück, wenn sie erfolgreich ist. Andernfalls wird FALSE- zurückgegeben, und der protokollierte Fehler kann mit einem Aufruf von GetLastErrorabgerufen werden.

Bemerkungen

Zum Aufzählen der Member des Treiberinformationssatzes sollte ein Installationsprogramm zuerst SetupDiEnumDriverInfo- aufrufen, wobei der MemberIndex-Parameter auf 0 festgelegt ist. Anschließend sollte MemberIndex- erhöht und SetupDiEnumDriverInfo- aufgerufen werden, bis keine weiteren Werte vorhanden sind. Wenn keine weiteren Werte vorhanden sind, schlägt die Funktion fehl, und ein Aufruf von GetLastError- gibt ERROR_NO_MORE_ITEMS zurück.

Wenn Sie das cbSize Member der SP_DRVINFO_DATA Struktur, die vom Zeiger DriverInfoData-bereitgestellt wird, nicht ordnungsgemäß initialisieren, schlägt die Funktion fehl und protokolliert den Fehler ERROR_INVALID_USER_BUFFER.

Um eine Liste der Treiber zu erstellen, die einem bestimmten Gerät oder der globalen Klassentreiberliste für einen Geräteinformationssatz zugeordnet sind, verwenden Sie zuerst SetupDiBuildDriverInfoList diese Liste dann an SetupDiEnumDriverInfoübergeben.

Anmerkung

Der header setupapi.h definiert SetupDiEnumDriverInfo als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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- Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows.
Zielplattform- Desktop
Header- setupapi.h (include Setupapi.h)
Library Setupapi.lib

Siehe auch

SetupDiBuildDriverInfoList