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


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

Функция SetupDiCreateDeviceInterfaceRegKey создает раздел реестра для хранения сведений об интерфейсе устройства и возвращает дескриптор ключа.

Синтаксис

WINSETUPAPI HKEY SetupDiCreateDeviceInterfaceRegKeyA(
  [in]           HDEVINFO                  DeviceInfoSet,
  [in]           PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
                 DWORD                     Reserved,
  [in]           REGSAM                    samDesired,
  [in, optional] HINF                      InfHandle,
  [in, optional] PCSTR                     InfSectionName
);

Параметры

[in] DeviceInfoSet

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

[in] DeviceInterfaceData

Указатель на структуру SP_DEVICE_INTERFACE_DATA, указывающую интерфейс устройства в DeviceInfoSet. Этот указатель, возможно, возвращается SetupDiCreateDeviceInterface.

Reserved

Скрытный. Должно быть равно нулю.

[in] samDesired

Доступ к системе безопасности реестра, запрашиваемый вызывающим ключом, который создается. Сведения о значениях доступа к безопасности реестра типа REGSAM см. в документации по пакету SDK для Microsoft Windows.

[in, optional] InfHandle

Дескриптор открытого INF-файла, содержащего раздел DDInstall, который будет выполнен для только что созданного ключа. Этот параметр является необязательным и может быть null. Если этот параметр не null, необходимо также указать InfSectionName.

[in, optional] InfSectionName

Указатель на имя inf DDInstall в INF-файле, указанном InfHandle. Этот раздел выполняется для только что созданного ключа. Этот параметр является необязательным и может быть null. Если этот параметр указан, необходимо также указать InfHandle.

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

Если SetupDiCreateDeviceInterfaceRegKey успешно, функция возвращает дескриптор запрошенного раздела реестра, в котором можно хранить и извлекать сведения о интерфейсе. Если SetupDiCreateDeviceInterfaceRegKey завершается ошибкой, функция возвращает INVALID_HANDLE_VALUE. Вызовите GetLastError, чтобы получить расширенные сведения об ошибке.

Замечания

Вызывающий объект этой функции должен быть членом группы "Администраторы".

Если запрошенный ключ для интерфейса устройства уже существует, SetupDiCreateDeviceInterfaceRegKey возвращает дескриптор этого ключа; в противном случае SetupDiCreateDeviceInterfaceRegKey создает новый раздел реестра, отличный от срока действия, для указанного интерфейса устройства. Вызывающие функции могут хранить данные частной конфигурации для интерфейса устройства в этом ключе. Драйвер для устройства может получить доступ к этому ключу с помощью подпрограмм IoXxx.

Закройте дескриптор, возвращенный этой функцией, вызвав RegCloseKey.

Для установок, использующих файлы макета (указанные записью LayoutFile LayoutFile в разделе INF Version), файл макета должен быть открыт вызовом SetupOpenAppendInfFile (описано в документации по пакету SDK для Windows), прежде чем вызывать SetupDiCreateDeviceInterfaceRegKey.

Набор сведений об устройстве, указанный DeviceInfoSet, должен содержать только элементы на локальном компьютере.

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Microsoft Windows 2000 и более поздних версиях Windows.
целевая платформа Настольный
заголовка setupapi.h (include Setupapi.h)
библиотеки Setupapi.lib

См. также

SetupDiCreateDeviceInterface

SetupDiDeleteDeviceInterfaceRegKey

SetupDiOpenDeviceInterfaceRegKey