Функция SetupDiCreateDeviceInfoListExA (setupapi.h)
Функция SetupDiCreateDeviceInfoList создает пустой набор сведений об устройстве на удаленном или локальном компьютере и при необходимости связывает набор с классом установки устройства .
Синтаксис
WINSETUPAPI HDEVINFO SetupDiCreateDeviceInfoListExA(
[in, optional] const GUID *ClassGuid,
[in, optional] HWND hwndParent,
[in, optional] PCSTR MachineName,
PVOID Reserved
);
Параметры
[in, optional] ClassGuid
Указатель на GUID класса настройки устройства, который необходимо связать с вновь созданным набором сведений об устройстве. Если указан этот параметр, в этот набор сведений об устройстве могут быть включены только устройства этого класса. Если этот параметр имеет значение NULL, набор сведений об устройстве не связан с определенным классом настройки устройства.
[in, optional] hwndParent
Дескриптор окна верхнего уровня, используемый для любого пользовательского интерфейса, связанного с действиями, не зависящими от устройства (например, диалоговое окно выбора устройства, использующее список драйверов глобального класса). Этот дескриптор является необязательным и может иметь значение NULL. Если определенное окно верхнего уровня не требуется, задайте для hwndParentзначение NULL.
[in, optional] MachineName
Указатель на строку, завершающуюся значением NULL, которая содержит имя компьютера в сети. Если указано имя, в этом наборе сведений об устройстве можно создавать и открывать только устройства на этом компьютере. Если для этого параметра задано значение NULL, набор сведений об устройстве предназначен для устройств на локальном компьютере.
Внимание!
Использование этой функции для доступа к удаленным компьютерам не поддерживается начиная с Windows 8 и Windows Server 2012, так как эта функция была удалена.
Reserved
Должен иметь значение NULL.
Возвращаемое значение
Функция возвращает дескриптор пустому набору сведений об устройстве в случае успешного выполнения. В противном случае возвращается INVALID_HANDLE_VALUE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Вызывающий объект этой функции должен удалить возвращенный набор сведений об устройстве, если он больше не нужен, вызвав SetupDiDeкистралистDeviceInfoList.
Если набор сведений об устройстве предназначен для устройств на удаленном компьютере (MachineName не имеет значения NULL), все последующие операции с этим набором или любым из его элементов должны использовать подпрограммы, поддерживающие наборы сведений об устройствах с удаленными элементами. Подпрограммы SetupDiXxx , которые не предоставляют эту поддержку, такие как SetupDiCallClassInstaller, имеют инструкцию для этого на своей справочной странице.
Примечание
Заголовок setupapi.h определяет SetupDiCreateDeviceInfoListEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Microsoft Windows 2000 и более поздних версиях Windows. |
Целевая платформа | Персональный компьютер |
Верхняя часть | setupapi.h (включая Setupapi.h) |
Библиотека | Setupapi.lib |