D3DKMTEscape function (d3dkmthk.h)

The D3DKMTEscape function exchanges information with the display miniport driver.


  [in] const D3DKMT_ESCAPE *unnamedParam1


[in] unnamedParam1

A pointer to a structure that describes the exchanged information.

Return value

D3DKMTEscape returns one of the following values:

Return code Description
STATUS_SUCCESS Information was successfully shared.
STATUS_DEVICE_REMOVED The graphics adapter was stopped or the display device was reset.
STATUS_INVALID_PARAMETER Parameters were validated and determined to be incorrect.
STATUS_NO_MEMORY D3DKMTEscape could not complete because of insufficient memory.
STATUS_PRIVILEGED_INSTRUCTION D3DKMTEscape detected non-privileged instructions (that is, instructions that access memory beyond the privilege of the current CPU process).
STATUS_ILLEGAL_INSTRUCTION D3DKMTEscape detected instructions that cannot be supported by graphics hardware.

This function might also return other NTSTATUS values.


The OpenGL ICD calls D3DKMTEscape to exchange data directly with the display miniport driver. For testing purposes, the OpenGL ICD can also call D3DKMTEscape to control the video memory manager and graphics processing unit (GPU) scheduler (which are part of Dxgkrnl.sys) and the behavior of the operating system's Timeout Detection and Recovery (TDR) process.

Hardware vendors can use D3DKMTEscape in their OpenGL ICDs as an extension mechanism. However, vendors should report necessary extensions to Microsoft so the extensions can be natively supported by the operating system.


Minimum supported client Available in Windows Vista and later versions of the Windows operating systems.
Target Platform Universal
Header d3dkmthk.h (include D3dkmthk.h)
Library Gdi32.lib
DLL Gdi32.dll

See also