次の方法で共有


HeapVidMemAllocAligned 関数 (dmemmgr.h)

HeapVidMemAllocAligned 関数は、DirectDraw ビデオ メモリ ヒープ マネージャーを使用して、ディスプレイ ドライバーにoff_screen_memoryを割り当てます。

構文

FLATPTR HeapVidMemAllocAligned(
  [in]  LPVIDMEM           lpVidMem,
  [in]  DWORD              dwWidth,
  [in]  DWORD              dwHeight,
  [in]  LPSURFACEALIGNMENT lpAlignment,
  [out] LPLONG             lpNewPitch
);

パラメーター

[in] lpVidMem

サーフェスを割り当てる DirectDraw ヒープを表す VIDEOMEMORY 構造体へのポインター。

[in] dwWidth

要求されたサーフェスの幅をバイト単位で指定します。

[in] dwHeight

要求されたサーフェスのスキャン ラインの高さです。

[in] lpAlignment

サーフェスの配置制限を記述する SURFACEALIGNMENT 構造体へのポインター。

[out] lpNewPitch

結果のピッチ値が書き込まれる場所です。 この情報は、線形 (非rectangular) オフスクリーン ヒープにのみ関連します。

戻り値

HeapVidMemAllocAligned は 、成功した場合に結果として得られる割り当ての FLATPTR オフセットを返します。 それ以外の場合は、0 を返します。

解説

ドライバーは、DrvGetDirectDrawInfo 関数が受け取る VIDEOMEMORY 構造体の配列を使用して、HeapVidMemAllocAligned を呼び出す lpVidMem の値を決定する必要があります。 ドライバーは、DrvGetDirectDrawInfo の 2 回目の呼び出し中に pvmList パラメーターでこの配列を受け取ります。 システムにメモリ不足状態が存在する場合、 DrvGetDirectDrawInfo が呼び出されない可能性があります。 そのため、ドライバーは常にチェックして、pvmList に NULL 以外のポインターがあることを確認する必要があります。

要件

   
サポートされている最小のクライアント Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。
対象プラットフォーム ユニバーサル
Header dmemmgr.h (Winddi.h を含む)
Library Win32k.lib
[DLL] Win32k.sys

関連項目

DrvGetDirectDrawInfo

SURFACEALIGNMENT

VIDEOMEMORY

VidMemFree