次の方法で共有


PINT10_ALLOCATE_BUFFERコールバック関数 (video.h)

Int10AllocateBuffer 関数を使用すると、別のスレッドのコンテキストで 4 KB のメモリ ブロックを 1 つ割り当てることができます。 メモリ ブロックが割り当てられた後は、別のメモリ ブロックを割り当てる前に解放する必要があります。

構文

PINT10_ALLOCATE_BUFFER Pint10AllocateBuffer;

VP_STATUS Pint10AllocateBuffer(
  [in]      IN PVOID Context,
  [out]     OUT PUSHORT Seg,
  [out]     OUT PUSHORT Off,
  [in, out] IN OUT PULONG Length
)
{...}

パラメーター

[in] Context

インターフェイスのビデオ ポート ドライバー定義コンテキストへのポインター。 これは、VideoPortQueryServices が返された後、VIDEO_PORT_INT10_INTERFACE 構造体の Context メンバー 値と同じである必要があります。

[out] Seg

割り当てられたメモリ バッファーのセグメント アドレスを受け取るメモリ位置へのポインター。

[out] Off

割り当てられたメモリ バッファーの *Segで指定されたセグメント内のオフセットを受け取るメモリ位置へのポインター。

[in, out] Length

要求されたメモリ バッファーの長さ (バイト単位) を含むメモリ位置へのポインター。最大 4096 までです。 関数から制御が戻ると、このメモリ位置には、メモリが実際に割り当てられたかどうかに関する値 4096 が格納されます。

戻り値

Int10AllocateBuffer 関数は、成功するとNO_ERRORを返します。 バッファーが以前に割り当てられている場合、または 4096 バイトを超えるバッファー サイズが要求された場合は、STATUS_INSUFFICIENT_RESOURCESが返されます。

備考

ビデオ ポートは、この関数を実装します。この関数は、VIDEO_PORT_INT10_INTERFACE 構造体内のポインターを介してアクセスできます。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。
ターゲット プラットフォーム デスクトップ
ヘッダー video.h (Video.h を含む)
IRQL PASSIVE_LEVEL

関連項目

VIDEO_PORT_INT10_INTERFACE