Функция VideoPortSetRegistryParameters (video.h)

Функция VideoPortSetRegistryParameters записывает сведения в раздел адаптера в реестре.

Синтаксис

VIDEOPORT_API VP_STATUS VideoPortSetRegistryParameters(
       PVOID HwDeviceExtension,
  [in] PWSTR ValueName,
  [in] PVOID ValueData,
       ULONG ValueLength
);

Параметры

HwDeviceExtension

Указатель на расширение устройства драйвера минипорта.

[in] ValueName

Указатель на буфер, содержащий строку Юникода, завершающуюся значением NULL, которая присваивает имя записи значения, для которой записываются данные в реестре.

[in] ValueData

Указатель на буфер, содержащий значения, записываемые для записи ValueName .

ValueLength

Указывает размер данных, записываемых в реестр в байтах.

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

VideoPortSetRegistryParameters возвращает NO_ERROR, если указанные данные успешно записаны в реестр. В противном случае он может вернуть ERROR_INVALID_PARAMETER.

Комментарии

VideoPortSetRegistryParameters выполняет поиск в разделе адаптера реестра имени значения, указанного в параметре ValueName . Если искомое имя значения не существует, эта функция автоматически создает ее. При обнаружении или создании имени значения содержимое параметра ValueData копируется в имя значения.

Для windows XP и более поздних версий операционной системы имя значения, указанное в параметрах ValueName , не обязательно должно быть напрямую связано с ключом адаптера . Вместо этого ValueName можно связать с подразделом, путь к которому включает ключ адаптера . Если строка ValueName содержит один или несколько обратных косых черт, VideoPortSetRegistryParameters ищет или создает подраздел, имя которого находится в конце строки.

Например, если параметру ValueName присвоено значение "SubKey1\Value1", эта функция выполняет поиск SubKey1 в разделе адаптера в реестре, создавая SubKey1 , если он не существует. Затем функция ищет имя значения Value1 , создавая его при необходимости. Затем VideoPortSetRegistryParameters копирует содержимое параметра ValueData в реестр. Путь, указанный в параметре ValueName , может ссылаться на имя значения произвольное количество уровней под ключом адаптера , но поведение этой функции по сути совпадает. Если в какой-либо точке имя подраздела или значения не найдено, он создается автоматически.

В Windows 2000 и более поздних версий VideoPortSetRegistryParameters возвращает ERROR_INVALID_PARAMETER если строка, переданная в параметре ValueName , начинается с DefaultSettings. (Обратите внимание, что точка является частью строки). В операционных системах, предшествующих Windows 2000, драйвер видеопорта может передать имя значения, начинающееся с DefaultSettings, чтобы указать разрешение по умолчанию для монитора, но в Windows 2000 и более поздних версий не требуется.

В проверенной сборке любой версии операционной системы имя значения, начинающееся с DefaultSettings, приводит к сбою утверждения.

Функция VideoPortSetRegistryParameters не может вызываться из функций HwVidInterrupt или HwVidTimer драйвера мини-порта или из VideoPortQueueDpc или из обратного вызова в VideoPortSynchronizeExecution.

Требования

   
Минимальная версия клиента Доступно в Windows 2000 и более поздних версиях операционных систем Windows.
Целевая платформа Рабочий стол
Заголовок video.h (include Video.h)
Библиотека Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

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

HwVidFindAdapter

HwVidInitialize

VideoPortFlushRegistry

VideoPortGetRegistryParameters