次の方法で共有


D3DKMT_ESCAPE構造体 (d3dkmthk.h)

D3DKMT_ESCAPE構造体は、ディスプレイ ミニポート ドライバーと交換される情報を記述します。

構文

typedef struct _D3DKMT_ESCAPE {
  [in]     D3DKMT_HANDLE      hAdapter;
  [in]     D3DKMT_HANDLE      hDevice;
  [in]     D3DKMT_ESCAPETYPE  Type;
  [in]     D3DDDI_ESCAPEFLAGS Flags;
  [in/out] VOID               *pPrivateDriverData;
  [in]     UINT               PrivateDriverDataSize;
  [in]     D3DKMT_HANDLE      hContext;
} D3DKMT_ESCAPE;

メンバーズ

[in] hAdapter

情報が交換されるグラフィックス アダプターへのハンドル。

[in] hDevice

交換する情報が特定のデバイスに固有の場合に必要に応じて指定されるディスプレイ デバイスへのハンドル。

[in] Type

ディスプレイ ミニポート ドライバーと情報を交換するか、カーネル モード コンポーネントを制御するかを示すD3DKMT_ESCAPETYPE型の値。 次の表に、使用可能な値を示します。

値の 意味
D3DKMT_ESCAPE_DRIVERPRIVATE (0) pPrivateDriverData メンバーは、ディスプレイ ミニポート ドライバーを対象とします。 ハードウェア ベンダーは、エスケープ データの形式を定義します。
D3DKMT_ESCAPE_VIDMM (1) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、ビデオ メモリ マネージャー (Dxgkrnl.sysの一部) を制御します。 pPrivateDriverData が指すバッファーには、ビデオ メモリ マネージャーのさまざまな種類の制御をサポートする D3DKMT_VIDMM_ESCAPE 構造体が含まれています。
D3DKMT_ESCAPE_TDRDBGCTRL (2) 使用しないでください。 テスト目的のみ。 エスケープ操作を使用すると、ユーザーはオペレーティング システムのタイムアウト検出と回復 (TDR) プロセスの動作を制御できます。
この機能は、既定では無効になっています。 この機能を有効にするには、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers キーに格納されている TdrTestMode = TdrTestMode DWORD レジストリ値を 1 に設定する必要があります。
PrivateDriverDataSize メンバーは sizeof(int) に設定されています。 pPrivateDriverData メンバーは、D3DKMT_TDRDBGCTRLTYPE 列挙型の値を持つ整数に設定されます。
D3DKMT_ESCAPE_VIDSCH (3) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、グラフィックス処理装置 (GPU) スケジューラ (Dxgkrnl.sysの一部) を制御します。 pPrivateDriverData が指すバッファーには、プリエンプション制御とスケジューラの中断または再開をサポートする D3DKMT_VIDSCH_ESCAPE 構造体が含まれています。
D3DKMT_ESCAPE_DEVICE (4) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、ディスプレイ デバイスを制御します。 pPrivateDriverData が指すバッファーには、プライマリ割り当てからのビデオの現在のソースの取得をサポートする D3DKMT_DEVICE_ESCAPE 構造体が含まれています。
D3DKMT_ESCAPE_DMM (5) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、表示モード マネージャーを制御します。 pPrivateDriverData が指すバッファーには、D3DKMT_DMM_ESCAPE 構造体が含まれています。
D3DKMT_ESCAPE_DEBUG_SNAPSHOT (6) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、デバッグ スナップショット バッファーを取得します。 pPrivateDriverData が指すバッファーには、D3DKMT_DEBUG_SNAPSHOT_ESCAPE 構造体が含まれています。
D3DKMT_ESCAPE_SETDRIVERUPDATESTATUS (7) 使用しないでください。 テスト目的のみ。 OpenGL ICD は、ディスプレイ ミニポート ドライバーの更新状態を設定します。
D3DKMT_ESCAPE_DRT_TEST (8) 使用しないでください。 テスト目的のみ。
D3DKMT_ESCAPE_DIAGNOSTICS (9) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_OUTPUTDUPL_SNAPSHOT (10) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_OUTPUTDUPL_DIAGNOSTICS (11) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_BDD_PNP (12) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_BDD_FALLBACK (13) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_ACTIVATE_SPECIFIC_DIAG(14) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_MODES_PRUNED_OUT(15) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_WQHL_INFO(16) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_BRIGHTNESS(17) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_EDID_CACHE(18) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_GENERIC_ADAPTER_DIAG_INFO(19) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_MIRACAST_DISPLAY_REQUEST (20) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。
D3DKMT_ESCAPE_HISTORY_BUFFER_STATUS (21) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。
D3DKMT_ESCAPE_MIRACAST_ADAPTER_DIAG_INFO (23) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_START(1024) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_HIP_DEVICE_INFO(1024) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_QUERY_CD_ROTATION_BLOCK (1025) 使用しないでください。 テスト目的のみ。 Windows 8 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_DPI_INFO (1026) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_PRESENTER_VIEW_INFO (1027) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。
D3DKMT_ESCAPE_WIN32K_SYSTEM_DPI (1028) 使用しないでください。 テスト目的のみ。 Windows 8.1 以降でサポートされています。

[in] Flags

ビット フィールド フラグで情報を共有する方法を示す D3DDDI_ESCAPEFLAGS 構造体。 OpenGL ICD は、HardwareAccess ビット フィールド フラグを指定して、ディスプレイ ミニポート ドライバーが、オペレーティング システムが DxgkDdiEscape 呼び出しのディスプレイ ミニポート ドライバーに 第 2 レベルの同期を実行する必要があることを示すグラフィックス ハードウェアにアクセスする必要があることを示す必要があります。

[in/out] pPrivateDriverData

OpenGL ICD がディスプレイ ミニポート ドライバーとやり取りするか、カーネル モード コンポーネントを制御するために使用する情報を含む、OpenGL ICD が割り当てるバッファーへのポインター。 次の表では、Type の値に応じて、pPrivateDriverData が指すバッファーの内容 説明します。

型メンバー の値 pPrivateDriverData バッファー のコンテンツ
D3DKMT_ESCAPE_DRIVERPRIVATE ドライバー固有。 OpenGL ICD とディスプレイ ミニポート ドライバーの間に緊密な結合が存在しない限り、バッファーは使用できません。
D3DKMT_ESCAPE_VIDMM 使用しないでください。 テスト目的のみ。 D3DKMT_VIDMM_ESCAPE 構造体。
D3DKMT_ESCAPE_TDRDBGCTRL 使用しないでください。 テスト目的のみ。 D3DKMT_TDRDBGCTRLTYPE 列挙型。
D3DKMT_ESCAPE_VIDSCH 使用しないでください。 テスト目的のみ。 D3DKMT_VIDSCH_ESCAPE 構造体。
D3DKMT_ESCAPE_DEVICE 使用しないでください。 テスト目的のみ。 D3DKMT_DEVICE_ESCAPE 構造体。
D3DKMT_ESCAPE_DMM 使用しないでください。 テスト目的のみ。 D3DKMT_DMM_ESCAPE 構造体。
D3DKMT_ESCAPE_DEBUG_SNAPSHOT 使用しないでください。 テスト目的のみ。 D3DKMT_DEBUG_SNAPSHOT_ESCAPE 構造体。

[in] PrivateDriverDataSize

pPrivateDriverData が指 バッファーのサイズ (バイト単位)。 OpenGL ICD は、D3DKMTEscape 関数を呼び出すときにバッファーのサイズを指定する必要があります。

[in] hContext

交換する情報が特定のデバイス コンテキストに固有の場合に必要に応じて指定されるコンテキストへのハンドル。 OpenGL ICD hContext を NULL 以外の値に設定する場合、ICD hDevice を NULL 以外の値に設定し、hDevice がコンテキストを所有するデバイスに対応している必要があります。

備考

テスト目的で、OpenGL ICD は、D3DKMTEscape 関数の呼び出しでD3DKMT_ESCAPE構造体へのポインターを渡して、ビデオ メモリ マネージャーと GPU スケジューラ (Dxgkrnl.sysの一部) とオペレーティング システムの TDR プロセスの動作を制御できます。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ヘッダー d3dkmthk.h (D3dkmthk.h を含む)

関連項目

D3DKMTEscape

D3DKMT_DEBUG_SNAPSHOT_ESCAPE

D3DKMT_DEVICE_ESCAPE

D3DKMT_DMM_ESCAPE

D3DKMT_TDRDBGCTRLTYPE

D3DKMT_VIDMM_ESCAPE

D3DKMT_VIDSCH_ESCAPE