DXGKDDI_ESCAPE コールバック関数 (d3dkmddi.h)
DxgkDdiEscape 関数は、ユーザー モード ディスプレイ ドライバーと情報を共有します。
構文
DXGKDDI_ESCAPE DxgkddiEscape;
NTSTATUS DxgkddiEscape(
[in] IN_CONST_HANDLE hAdapter,
[in] IN_CONST_PDXGKARG_ESCAPE pEscape
)
{...}
パラメーター
[in] hAdapter
ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーは、DxgkDdiAddDevice 関数の出力パラメーター ミニポートDeviceContext の Microsoft DirectX グラフィックス カーネル サブシステムにこのハンドルを提供しました。
[in] pEscape
共有情報に関する情報を含む DXGKARG_ESCAPE 構造体へのポインター。
注DxgkDdiEscape 呼び出しを第 2 レベルで行うには、DXGKARG_ESCAPEのメンバーである D3DDDI_ESCAPEFLAGS 構造体内で HardwareAccess フラグを設定する必要があります。 このフラグが設定されていない場合、呼び出しは失敗します。
戻り値
DxgkDdiEscape は、次のいずれかの値を返します。
リターン コード | 形容 |
---|---|
STATUS_SUCCESS | DxgkDdiEscape が正常に情報を共有しました。 |
STATUS_INVALID_PARAMETER | DxgkDdiEscape に渡されたパラメーターには、完了を妨げるエラーが含まれていました。 |
STATUS_NO_MEMORY | DxgkDdiEscape は、完了するために必要なメモリを割り当てませんでした。 |
STATUS_PRIVILEGED_INSTRUCTION | DxgkDdiEscape は、特権のない命令 (つまり、現在の中央処理装置 [CPU] プロセスの特権を超えてメモリにアクセスする命令) を検出しました。 |
STATUS_ILLEGAL_INSTRUCTION | DxgkDdiEscape で、グラフィックス ハードウェアでサポートできない命令が検出されました。 |
STATUS_GRAPHICS_DRIVER_MISMATCH | ディスプレイ ミニポート ドライバーは、DxgkDdiEscape への呼び出しを開始したユーザー モードのディスプレイ ドライバーと互換性がありません。 |
備考
DirectX グラフィックス カーネル サブシステムは、ユーザー モードのディスプレイ ドライバーが他のドライバー通信でサポートされていない方法でディスプレイ ミニポート ドライバーと情報を共有する必要がある場合は常に、ディスプレイ ミニポート ドライバーの DxgkDdiEscape 関数を呼び出します。
DxgkDdiEscape ページング可能にする必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
関連項目
DxgkDdiAddDevice の
pfnEscapeCb の