Функция SetupDiGetClassRegistryPropertyA (setupapi.h)
Функция SetupDiGetClassRegistryProperty извлекает свойство для указанного класса настройки устройства из реестра.
Синтаксис
WINSETUPAPI BOOL SetupDiGetClassRegistryPropertyA(
[in] const GUID *ClassGuid,
[in] DWORD Property,
[out, optional] PDWORD PropertyRegDataType,
[out] PBYTE PropertyBuffer,
[in] DWORD PropertyBufferSize,
[out, optional] PDWORD RequiredSize,
[in, optional] PCSTR MachineName,
PVOID Reserved
);
Параметры
[in] ClassGuid
Указатель на GUID, представляющий класс настройки устройства, для которого требуется извлечь свойство.
[in] Property
Значение типа , определяющее извлекаемое свойство. Это должно быть одно из следующих значений:
SPCRP_CHARACTERISTICS
Функция возвращает флаги, указывающие характеристики устройства для класса . Список флагов характеристик см. в разделе Параметр DeviceCharacteristics для IoCreateDevice.
SPCRP_DEVTYPE
Функция возвращает значение DWORD, представляющее тип устройства для класса . Дополнительные сведения см. в разделе Указание типов устройств.
SPCRP_EXCLUSIVE
Функция возвращает значение DWORD, указывающее, могут ли пользователи получить монопольный доступ к устройствам для этого класса. Возвращаемое значение равно 1, если монопольный доступ разрешен, или ноль в противном случае.
SPCRP_LOWERFILTERS
(Windows Vista и более поздние версии) Функция возвращает REG_MULTI_SZ список имен служб драйверов нижнего фильтра, установленных для класса установки устройства.
SPCRP_SECURITY
Функция возвращает дескриптор безопасности устройства в виде структуры SECURITY_DESCRIPTOR в самособображяющем формате (описано в документации по Microsoft Windows SDK).
SPCRP_SECURITY_SDS
Функция возвращает дескриптор безопасности устройства в виде текстовой строки. Сведения о строках дескриптора безопасности см. в разделе Язык определения дескриптора безопасности (Windows). Сведения о формате строк дескриптора безопасности см. в разделе Язык определения дескрипторов безопасности (Windows).
SPCRP_UPPERFILTERS
(Windows Vista и более поздние версии) Функция возвращает REG_MULTI_SZ список имен служб драйверов верхнего фильтра, установленных для класса установки устройства.
[out, optional] PropertyRegDataType
Указатель на переменную типа DWORD, которая получает тип данных свойства в качестве одного из REG_ типов данных реестра с префиксом. Этот параметр является необязательным и может иметь значение NULL. Если этот параметр имеет значение NULL, setupDiGetClassRegistryProperty не возвращает тип данных.
[out] PropertyBuffer
Указатель на буфер, получающий запрошенное свойство.
[in] PropertyBufferSize
Размер буфера PropertyBuffer в байтах.
[out, optional] RequiredSize
Указатель на переменную типа DWORD, которая получает требуемый размер буфера PropertyBuffer в байтах. Если буфер PropertyBuffer слишком мал, а Параметр RequiredSize не равен NULL, функция присваивает параметру RequiredSize минимальный размер буфера, необходимый для получения запрошенного свойства.
[in, optional] MachineName
Указатель на строку, завершающуюся значением NULL, которая содержит имя удаленной системы, из которой извлекается указанное свойство класса устройства. Этот параметр является необязательным и может иметь значение NULL. Если этот параметр имеет значение NULL, свойство извлекается из локальной системы.
Внимание!
Использование этой функции для доступа к удаленным компьютерам не поддерживается, начиная с Windows 8 и Windows Server 2012, так как эта функция была удалена.
Reserved
Зарезервировано, должно иметь значение NULL.
Возвращаемое значение
Функция возвращает ЗНАЧЕНИЕ TRUE , если оно выполнено успешно. В противном случае возвращается значение FALSE , а зарегистрированная ошибка может быть получена с помощью вызова Метода GetLastError.
Комментарии
Примечание
Заголовок setupapi.h определяет SetupDiGetClassRegistryProperty в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows XP и более поздних версиях Windows. |
Целевая платформа | DesktopДля универсального, вызовите CM_Get_Class_Registry_Property |
Верхняя часть | setupapi.h (включая Setupapi.h) |
Библиотека | Setupapi.lib |
См. также раздел
SetupDiGetDeviceRegistryProperty