DXGKDDI_ESCAPE callback function (d3dkmddi.h)

The DxgkDdiEscape function shares information with the user-mode display driver.



NTSTATUS DxgkddiEscape(
  [in] IN_CONST_HANDLE hAdapter,


[in] hAdapter

A handle to a context block that is associated with a display adapter. The display miniport driver previously provided this handle to the Microsoft DirectX graphics kernel subsystem in the MiniportDeviceContext output parameter of the DxgkDdiAddDevice function.

[in] pEscape

A pointer to a DXGKARG_ESCAPE structure that contains information about the shared information.

Note  In order for the DxgkDdiEscape call to be made under the second level, the HardwareAccess flag must be set within the D3DDDI_ESCAPEFLAGS structure that is a member of DXGKARG_ESCAPE. If this flag is not set, then the call will fail.

Return value

DxgkDdiEscape returns one of the following values:

Return code Description
STATUS_SUCCESS DxgkDdiEscape successfully shared information.
STATUS_INVALID_PARAMETER Parameters that were passed to DxgkDdiEscape contained errors that prevented it from completing.
STATUS_NO_MEMORY DxgkDdiEscape could not allocate memory that was required for it to complete.
STATUS_PRIVILEGED_INSTRUCTION DxgkDdiEscape detected nonprivileged instructions (that is, instructions that access memory beyond the privilege of the current central processing unit [CPU] process).
STATUS_ILLEGAL_INSTRUCTION DxgkDdiEscape detected instructions that graphics hardware could not support.
STATUS_GRAPHICS_DRIVER_MISMATCH The display miniport driver is not compatible with the user-mode display driver that initiated the call to DxgkDdiEscape.


The DirectX graphics kernel subsystem calls the display miniport driver's DxgkDdiEscape function whenever the user-mode display driver must share information with the display miniport driver in a way that is not supported through other driver communications.

DxgkDdiEscape should be made pageable.


Minimum supported client Windows Vista
Target Platform Desktop
Header d3dkmddi.h

See also