次の方法で共有


VIDEO_REQUEST_PACKET構造体 (video.h)

VIDEO_REQUEST_PACKET構造体へのポインターは、ビデオ ポート ドライバーによってミニポート ドライバーの HwVidStartIO 関数に渡されます。 ビデオ ポート ドライバーは、EngDeviceIoControlへの GDI 呼び出しに応答して送信される IRP コード (IRP メジャー関数コードを参照) から VRP を設定します。 通常、対応するディスプレイ ドライバーは、ビデオ ポート ミニポート ドライバー ペアからのサポートが必要な場合に、EngDeviceIoControl 呼び出しを行います。 ビデオ ポート ドライバーは、指定されたIOCTL_VIDEO_XXX 要求を処理する VRP を使用してミニポート ドライバーを呼び出します。

構文

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

呼び出し元によって EngDeviceIoControl 関数に渡され、IRP コードでビデオ ポート ドライバーに送信されるIOCTL_VIDEO_XXX 値を指定します。 ミニポート ドライバーがサポートする必要があるシステム定義IOCTL_VIDEO_XXX のセットの詳細については、「ビデオ ミニポート ドライバー I/O コントロール コード を参照してください。

StatusBlock

VRP内のSTATUS_BLOCK構造体へのポインター。 StatusBlock は、各 VRP の完了時に戻り情報をミニポート ドライバーによって入力されます。

InputBuffer

呼び出し元によって渡された情報を含む入力バッファーへのポインター。 データの構造は、IoControlCode の値依存します。 このメンバーは、実際には、OutputBuffer によって示されるバッファー同じバッファーを指します。

InputBufferLength

入力バッファーのサイズをバイト単位で指定します。

OutputBuffer

ミニポート ドライバーが呼び出し元に返されるデータを転送する出力バッファーへのポインター。 データの構造は、IoControlCode の値によって異なります。 このメンバーは、InputBufferと同じバッファーを指しているため、ミニポート ドライバーは、InputBufferからすべての入力データを使用する前に、OutputBuffer に出力を書き込む必要があります。

OutputBufferLength

出力バッファーのサイズをバイト単位で指定します。 ミニポート ドライバーは、このバッファーを拡大できません。 ミニポート ドライバーは、指定された OutputBuffer が小さすぎて返されるすべての情報を含むには、ERROR_INSUFFICIENT_BUFFERまたはERROR_MORE_DATA StatusBlock状態 メンバーを設定する必要があります。

必要条件

要件 価値
ヘッダー video.h (Video.h を含む)

関連項目

HwVidStartIO

STATUS_BLOCK

ビデオ ミニポート ドライバー I/O コントロール コード