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 呼叫的顯示迷你埠驅動程式。
[in/out] pPrivateDriverData
OpenGL ICD 配置的緩衝區指標,其中包含 OpenGL ICD 與顯示迷你埠驅動程式交換或用來控制內核模式元件的資訊。 下表描述
類型成員 的 |
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) |