D3DKMTOutputDuplPresent 函式 (d3dkmthk.h)
將桌面視窗管理員 (DWM) 的 桌面重複 API 交換鏈提交至 Microsoft DirectX 圖形核心子系統 (Dxgkrnl.sys) 。
語法
NTSTATUS D3DKMTOutputDuplPresent(
[in] const D3DKMT_OUTPUTDUPLPRESENT *unnamedParam1
);
參數
[in] unnamedParam1
描述目前作業之參數 之D3DKMT_OUTPUTDUPLPRESENT 結構的指標。
傳回值
傳回下列其中一值:
傳回碼 | Description |
---|---|
STATUS_SUCCESS | 已成功執行目前作業。 |
STATUS_DEVICE_REMOVED | 圖形配接器已停止或顯示內容已重設。 |
STATUS_INVALID_PARAMETER | 已驗證參數,並判斷為不正確。 |
STATUS_NO_MEMORY | D3DKMTOutputDuplPresent 因為記憶體不足而無法完成。 |
STATUS_GRAPHICS_ALLOCATION_INVALID | 主要表面控點因為顯示模式變更而失效。 如果 OpenGL 可安裝用戶端驅動程式 (ICD) 收到此錯誤碼,它應該重新開啟或重新建立主要句柄、以新的句柄取代命令緩衝區中的所有參考,然後重新提交緩衝區。 |
STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE | 轉譯裝置內容發生錯誤, D3DKMT_OUTPUTDUPLPRESENT 指定的 hContext 成員。 注意: 此錯誤碼不會指出啟動逾時偵測和復原 (TDR) 進程,或 GPU 停止回應。 例如,如果顯示迷你埠驅動程式指出從此裝置提交的 DMA 緩衝區造成錯誤,或視訊記憶體管理員無法分頁處理 DMA 緩衝區的所有配置,即使分割 DMA 緩衝區之後,DirectX 圖形核心子系統仍會將裝置放入錯誤狀態。 當裝置處於錯誤狀態之後,就無法再執行任何作業,而且必須終結並重新建立。 ICD 可以呼叫 D3DKMTGetDeviceState 函式來判斷錯誤更精確的原因。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 |
最低支援的伺服器 | Windows Server 2012 |
目標平台 | Universal |
標頭 | d3dkmthk.h (包含 D3dkmthk.h) |
程式庫 | Gdi32.lib |
Dll | Gdi32.dll |