SetupDiEnumDriverInfoA-Funktion (setupapi.h)

Die SetupDiEnumDriverInfo-Funktion listet die Member einer Treiberliste auf.

Syntax

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

Parameter

[in] DeviceInfoSet

Ein Handle für den Geräteinformationssatz , der die zu enumerierende 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 sein. Wenn dieser Parameter angegeben ist, listet SetupDiEnumDriverInfo eine Treiberliste für das angegebene Gerät auf. Wenn dieser Parameter NULL ist, listet SetupDiEnumDriverInfo die globale Klassentreiberliste auf, die DeviceInfoSet zugeordnet ist (diese Liste ist vom Typ SPDIT_CLASSDRIVER).

[in] DriverType

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

SPDIT_CLASSDRIVER

Listen Sie eine Klassentreiberliste auf. Dieser Treiberlistentyp muss angegeben werden, wenn DeviceInfoData nicht angegeben ist.

SPDIT_COMPATDRIVER

Listet eine Liste kompatibler Treiber für das angegebene Gerät auf. 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 aufruferinitialisierte SP_DRVINFO_DATA Struktur, die Informationen über den enumerierten Treiber empfängt. Der Aufrufer muss DriverInfoData festlegen.cbSize to sizeof(SP_DRVINFO_DATA), bevor SetupDiEnumDriverInfo aufgerufen wird. Wenn das cbSize-Element nicht ordnungsgemäß festgelegt ist, gibt SetupDiEnumDriverInfoFALSE 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 GetLastError abgerufen werden.

Hinweise

Um Treiberinformationssatzmember aufzulisten, 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 werte mehr 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 den 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 SetupDiBuildDriverInfo, und übergeben Sie diese Liste an SetupDiEnumDriverInfo.

Hinweis

Der Setupapi.h-Header definiert SetupDiEnumDriverInfo 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 Aliases 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

   
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows.
Zielplattform Desktop
Kopfzeile setupapi.h (schließen Sie Setupapi.h ein)
Bibliothek Setupapi.lib

Weitere Informationen

SetupDiBuildDriverInfoList