Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция SetupDiEnumDriverInfo перечисляет элементы списка драйверов.
Синтаксис
WINSETUPAPI BOOL SetupDiEnumDriverInfoW(
[in] HDEVINFO DeviceInfoSet,
[in, optional] PSP_DEVINFO_DATA DeviceInfoData,
[in] DWORD DriverType,
[in] DWORD MemberIndex,
[out] PSP_DRVINFO_DATA_W DriverInfoData
);
Параметры
[in] DeviceInfoSet
Дескриптор набора сведений об устройстве , который содержит список драйверов для перечисления.
[in, optional] DeviceInfoData
Указатель на структуру SP_DEVINFO_DATA, указывающую элемент сведений об устройстве в DeviceInfoSet. Этот параметр является необязательным и может быть null. Если этот параметр указан, SetupDiEnumDriverInfo перечисляет список драйверов для указанного устройства. Если этот параметр NULL, SetupDiEnumDriverInfo перечисляет список драйверов глобального класса, связанный с DeviceInfoSet (этот список имеет тип SPDIT_CLASSDRIVER).
[in] DriverType
Тип списка драйверов для перечисления, который должен быть одним из следующих значений:
SPDIT_CLASSDRIVER
Перечисление списка драйверов классов. Этот тип списка драйверов должен быть указан, если DeviceInfoData не указан.
SPDIT_COMPATDRIVER
Перечислите список совместимых драйверов для указанного устройства. Этот тип списка драйверов можно указать, только если DeviceInfoData также указан.
[in] MemberIndex
Отсчитываемый от нуля индекс элемента сведений о драйвере.
[out] DriverInfoData
Указатель на инициализированную вызывающим SP_DRVINFO_DATA структуру, которая получает сведения о перечисленном драйвере. Вызывающий объект должен задать DriverInfoData.cbSizesizeof(SP_DRVINFO_DATA) перед вызовом SetupDiEnumDriverInfo. Если элемент cbSize неправильно задан, SetupDiEnumDriverInfo вернет FALSE.
Возвращаемое значение
Функция возвращает TRUE, если она выполнена успешно. В противном случае возвращается FALSE, а ошибка журнала может быть получена с помощью вызова GetLastError.
Замечания
Чтобы перечислить элементы набора сведений о драйвере, установщик должен сначала вызвать SetupDiEnumDriverInfo с параметром MemberIndex значение 0. Затем он должен увеличивать MemberIndex и вызывать SetupDiEnumDriverInfo, пока не будет больше значений. Если нет дополнительных значений, функция завершается ошибкой и вызовом GetLastError возвращается ERROR_NO_MORE_ITEMS.
Если вы не правильно инициализируете cbSize элемент структуры SP_DRVINFO_DATA, предоставленной указателем DriverInfoData, функция завершится ошибкой и зайдите в журнал ERROR_INVALID_USER_BUFFER.
Чтобы создать список драйверов, связанных с определенным устройством или списком драйверов глобального класса для набора сведений об устройстве, сначала используйте SetupDiBuildrInfoList затем передайте этот список в SetupDiEnumDriverInfo.
Заметка
Заголовок setupapi.h определяет SetupDiEnumDriverInfo как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Доступно в Microsoft Windows 2000 и более поздних версиях Windows. |
| целевая платформа | Настольный |
| заголовка | setupapi.h (include Setupapi.h) |
| библиотеки |
Setupapi.lib |