Поделиться через


Функция SetupDiSetSelectedDriverA (setupapi.h)

Функция SetupDiSetSelectedDriver задает или сбрасывает выбранный драйвер для элемента сведений об устройстве или выбранный драйвер класса для набора сведений об устройстве.

Синтаксис

WINSETUPAPI BOOL SetupDiSetSelectedDriverA(
  [in]      HDEVINFO           DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA   DeviceInfoData,
  [in, out] PSP_DRVINFO_DATA_A DriverInfoData
);

Параметры

[in] DeviceInfoSet

Дескриптор набора сведений об устройстве , содержащего список драйверов, из которого следует выбрать драйвер для элемента сведений об устройстве или для набора сведений об устройстве.

[in, out] DeviceInfoData

Указатель на структуру SP_DEVINFO_DATA , указывающую элемент сведений об устройстве в DeviceInfoSet. Этот параметр является необязательным и может иметь значение NULL. Если указан этот параметр, SetupDiSetSelectedDriver устанавливает или сбрасывает выбранный драйвер для указанного устройства. Если этот параметр имеет значение NULL, SetupDiSetSelectedDriver задает или сбрасывает выбранный драйвер класса для DeviceInfoSet.

[in, out] DriverInfoData

Указатель на структуру SP_DRVINFO_DATA , указывающую выбранный драйвер. Этот параметр является необязательным и может иметь значение NULL. Если указаны этот параметр и DeviceInfoData , указанный драйвер должен входить в список драйверов, связанный с DeviceInfoData. Если указан этот параметр и DeviceInfoData имеет значение NULL, драйвер должен быть членом списка драйверов глобального класса для DeviceInfoSet. Если этот параметр имеет значение NULL, выбранный драйвер сбрасывается для элемента сведений об устройстве, если указан параметр DeviceInfoData , или набора сведений об устройстве, если DeviceInfoData имеет значение NULL.

Если DriverInfoData.Зарезервировано значение NULL, вызывающий объект запрашивает поиск узла драйвера с указанными параметрами (DriverType, Description и ProviderName). При обнаружении совпадения выбирается узел драйвера. Поле Зарезервировано обновляется в выходных данных, чтобы отразить фактический узел драйвера, где было найдено совпадение. Если совпадение не найдено, функция завершается сбоем, и вызов Метода GetLastError возвращает ERROR_INVALID_PARAMETER.

Возвращаемое значение

Функция возвращает ЗНАЧЕНИЕ TRUE , если оно выполнено успешно. В противном случае возвращается значение FALSE , а зарегистрированная ошибка может быть получена с помощью вызова Метода GetLastError.

Комментарии

Если вызывающий объект SetupDiSetSelectedDriver является членом группы Администраторы, класс устройства устанавливается в класс выбранного драйвера при условии, что эти два класса различаются.

Если driverInfoData имеет значение NULL, SetupDiSetSelectedDriver сбрасывает выбранный драйвер. В результате не выбран драйвер.

Примечание

Заголовок setupapi.h определяет SetupDiSetSelectedDriver в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Доступно в Microsoft Windows 2000 и более поздних версиях Windows.
Целевая платформа Персональный компьютер
Верхняя часть setupapi.h (включая Setupapi.h)
Библиотека Setupapi.lib

См. также раздел

SetupDiGetSelectedDriver