Funzione SetupDiEnumDriverInfoA (setupapi.h)
La funzione SetupDiEnumDriverInfo enumera i membri di un elenco di driver.
Sintassi
WINSETUPAPI BOOL SetupDiEnumDriverInfoA(
[in] HDEVINFO DeviceInfoSet,
[in, optional] PSP_DEVINFO_DATA DeviceInfoData,
[in] DWORD DriverType,
[in] DWORD MemberIndex,
[out] PSP_DRVINFO_DATA_A DriverInfoData
);
Parametri
[in] DeviceInfoSet
Handle per il set di informazioni sul dispositivo che contiene l'elenco di driver da enumerare.
[in, optional] DeviceInfoData
Puntatore a una struttura SP_DEVINFO_DATA che specifica un elemento informazioni sul dispositivo in DeviceInfoSet. Questo parametro è facoltativo e può essere NULL. Se questo parametro viene specificato, SetupDiEnumDriverInfo enumera un elenco di driver per il dispositivo specificato. Se questo parametro è NULL, SetupDiEnumDriverInfo enumera l'elenco di driver di classe globale associato a DeviceInfoSet (questo elenco è di tipo SPDIT_CLASSDRIVER).
[in] DriverType
Tipo di elenco di driver da enumerare, che deve essere uno dei valori seguenti:
SPDIT_CLASSDRIVER
Enumerare un elenco di driver di classe. Questo tipo di elenco di driver deve essere specificato se DeviceInfoData non è specificato.
SPDIT_COMPATDRIVER
Enumerare un elenco di driver compatibili per il dispositivo specificato. Questo tipo di elenco di driver può essere specificato solo se è specificato anche DeviceInfoData .
[in] MemberIndex
Indice in base zero del membro informazioni driver da recuperare.
[out] DriverInfoData
Puntatore a una struttura SP_DRVINFO_DATA inizializzata dal chiamante che riceve informazioni sul driver enumerato. Il chiamante deve impostare DriverInfoData.cbSize a sizeof(SP_DRVINFO_DATA) prima di chiamare SetupDiEnumDriverInfo. Se il membro cbSize non è impostato correttamente, SetupDiEnumDriverInfo restituirà FALSE.
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce TRUE . In caso contrario, restituisce FALSE e l'errore registrato può essere recuperato con una chiamata a GetLastError.
Commenti
Per enumerare i membri del set di informazioni sui driver, un programma di installazione deve prima chiamare SetupDiEnumDriverInfo con il parametro MemberIndex impostato su 0. Deve quindi incrementare MemberIndex e chiamare SetupDiEnumDriverInfo fino a quando non sono presenti altri valori. Quando non sono presenti più valori, la funzione ha esito negativo e una chiamata a GetLastError restituisce ERROR_NO_MORE_ITEMS.
Se non si inizializza correttamente il membro cbSize della struttura SP_DRVINFO_DATA fornita dal puntatore DriverInfoData, la funzione avrà esito negativo e registra l'errore ERROR_INVALID_USER_BUFFER.
Per compilare un elenco di driver associati a un dispositivo specifico o all'elenco di driver di classe globale per un set di informazioni sul dispositivo, usare prima SetupDiBuildDriverInfoList e quindi passare tale elenco a SetupDiEnumDriverInfo.
Nota
L'intestazione setupapi.h definisce SetupDiEnumDriverInfo come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Client minimo supportato | Disponibile in Microsoft Windows 2000 e versioni successive di Windows. |
Piattaforma di destinazione | Desktop |
Intestazione | setupapi.h (include Setupapi.h) |
Libreria | Setupapi.lib |