Функция SetupDiGetDeviceInfoListDetailA (setupapi.h)
Функция SetupDiGetDeviceInfoListDetail извлекает сведения, связанные с набором сведений об устройствах, включая GUID класса, дескриптор удаленного компьютера и имя удаленного компьютера.
Синтаксис
WINSETUPAPI BOOL SetupDiGetDeviceInfoListDetailA(
[in] HDEVINFO DeviceInfoSet,
[out] PSP_DEVINFO_LIST_DETAIL_DATA_A DeviceInfoSetDetailData
);
Параметры
[in] DeviceInfoSet
Дескриптор набора сведений об устройстве , для которого требуется получить сведения.
[out] DeviceInfoSetDetailData
Указатель на инициализированную вызывающей SP_DEVINFO_LIST_DETAIL_DATA структуру, которая получает сведения о наборе сведений об устройстве. Дополнительные сведения об этой структуре см. в следующем разделе Примечания .
Возвращаемое значение
Функция возвращает ЗНАЧЕНИЕ TRUE , если оно выполнено успешно. В противном случае возвращается значение FALSE , а зарегистрированная ошибка может быть получена путем вызова Метода GetLastError.
Комментарии
Если параметры допустимы, SetupDiGetDeviceInfoListDetail задает значения в структуре DeviceInfoSetDetailData (за исключением поля cbSize ) и возвращает состояние NO_ERROR.
Вызывающий объект SetupDiGetDeviceInfoListDetail должен задать DeviceInfoSetDetailData.cbSize до sizeof(SP_DEVINFO_LIST_DETAIL_DATA) или функция завершится ошибкой, и вызов GetLastError вернет ERROR_INVALID_USER_BUFFER.
Если setupDiGetDeviceInfoListDetail успешно завершается, DeviceInfoSetDetailData.ClassGuid содержит GUID класса, связанный с набором сведений об устройстве, или структурой GUID_NULL.
Если setupDiGetDeviceInfoListDetail успешно завершается и набор сведений об устройстве предназначен для удаленной системы, DeviceInfoSetDetailData.RemoteMachineHandle содержит системный дескриптор ConfigMgr32 для доступа к удаленной системе и DeviceInfoSetDetailData.RemoteMachineName содержит имя удаленной системы. Если для набора сведений об устройстве имеется удаленный дескриптор, его необходимо использовать при вызове функций CM_Xxx_Ex так как дескрипторы DevInst находятся относительно удаленного дескриптора.
Если набор сведений об устройстве предназначен для локального компьютера, deviceInfoSetDetailData.RemoteMachineHandle имеет значение NULL и DeviceInfoSetDetailData.RemoteMachineName — пустая строка.
Примечание
Заголовок setupapi.h определяет SetupDiGetDeviceInfoListDetail в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Microsoft Windows 2000 и более поздних версиях Windows. |
Целевая платформа | Персональный компьютер |
Верхняя часть | setupapi.h (включая Setupapi.h) |
Библиотека | Setupapi.lib |