структура VIDEO_REQUEST_PACKET (video.h)

Указатель на структуру VIDEO_REQUEST_PACKET передается в функцию HwVidStartIO драйвера мини-порта драйвером видеопорта. Драйвер видеопорта настраивает VRP из кода IRP (см. раздел Основные коды функций IRP), отправленный в ответ на вызов GDI к EngDeviceIoControl. Как правило, соответствующий драйвер дисплея вызывает EngDeviceIoControl , когда ему требуется поддержка из пары драйверов видеопорт-минипорт. Драйвер видеопорта вызывает драйвер мини-порта с VRP для обработки заданного запроса IOCTL_VIDEO_XXX .

Синтаксис

typedef struct _VIDEO_REQUEST_PACKET {
  ULONG         IoControlCode;
  PSTATUS_BLOCK StatusBlock;
  PVOID         InputBuffer;
  ULONG         InputBufferLength;
  PVOID         OutputBuffer;
  ULONG         OutputBufferLength;
} VIDEO_REQUEST_PACKET, *PVIDEO_REQUEST_PACKET;

Члены

IoControlCode

Задает значение IOCTL_VIDEO_XXX, переданное вызывающей функцией EngDeviceIoControl и отправленное драйверу видеопорта в коде IRP. Дополнительные сведения о наборе системных IOCTL_VIDEO_XXX , которые должны поддерживаться драйверами мини-порта, см. в разделе Коды управления вводом-выводом драйвера video Miniport Driver.

StatusBlock

Указатель на структуру STATUS_BLOCK в VRP. StatusBlock заполняется драйвером минипорта с возвращаемыми сведениями по завершении каждого VRP.

InputBuffer

Указатель на входной буфер, содержащий сведения, передаваемые вызывающим объектом. Структура данных зависит от значения IoControlCode. Этот элемент фактически указывает на тот же буфер, что и в OutputBuffer.

InputBufferLength

Задает размер входного буфера в байтах.

OutputBuffer

Указатель на выходной буфер, в который драйвер минипорта передает данные, которые будут возвращены вызывающей точке. Структура данных зависит от значения IoControlCode. Поскольку этот элемент указывает на тот же буфер, что и InputBuffer, драйвер мини-порта не должен записывать выходные данные в OutputBuffer , прежде чем он будет использовать все входные данные из InputBuffer.

OutputBufferLength

Задает размер выходного буфера в байтах. Драйвер мини-порта не может увеличить этот буфер. Драйвер мини-порта должен задать элемент StatusBlock с ERROR_INSUFFICIENT_BUFFER или ERROR_MORE_DATA, если заданный OutputBuffer слишком мал, чтобы содержать все возвращаемые сведения.

Требования

Требование Значение
Заголовок video.h (включить Video.h)

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

HwVidStartIO

STATUS_BLOCK

Коды управления вводом-выводом драйвера Video Miniport