Функция 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 |