Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

D3DKMTOutputDuplPresent function

Submits a present command from the Desktop Duplication API swapchain of the Desktop Window Manager (DWM) to the Microsoft DirectX graphics kernel subsystem (Dxgkrnl.sys).

Syntax


EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTOutputDuplPresent(
  _In_  const D3DKMT_OUTPUTDUPLPRESENT pData
);

Parameters

pData [in]

A pointer to a D3DKMT_OUTPUTDUPLPRESENT structure that describes parameters for the present operation.

Return value

Returns one of the following values:

Return codeDescription
STATUS_SUCCESS

The present operation was successfully performed.

STATUS_DEVICE_REMOVED

The graphics adapter was stopped or the display context was reset.

STATUS_INVALID_PARAMETER

Parameters were validated and determined to be incorrect.

STATUS_NO_MEMORY

D3DKMTOutputDuplPresent could not complete because of insufficient memory.

STATUS_GRAPHICS_ALLOCATION_INVALID

The primary surface handle was invalidated because of a display mode change. If the OpenGL installable client driver (ICD) receives this error code, it should reopen or re-create the primary handle, replace all references in the command buffer to the old handle with the new handle, and then resubmit the buffer.

STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE

An error occurred on the rendering device context that the hContext member of D3DKMT_OUTPUTDUPLPRESENT specifies.

Note   This error code does not indicate the initiation of a Timeout Detection and Recovery (TDR) process or that the GPU stopped responding.

For example, the DirectX graphics kernel subsystem puts a device into an error state if the display miniport driver indicated that a DMA buffer that was submitted from this device caused a fault or if the video memory manager could not page-in all of the allocations that are required for a DMA buffer even after splitting the DMA buffer. After a device is in an error state, it cannot perform any more operations and must be destroyed and re-created. The ICD can call the D3DKMTGetDeviceState function to determine a more precise reason for the error.

 

Requirements

Minimum supported client

Windows 8

Minimum supported server

Windows Server 2012

Header

D3dkmthk.h (include D3dkmthk.h)

Library

Gdi32.lib

See also

D3DKMT_OUTPUTDUPLPRESENT
D3DKMTGetDeviceState

 

 

Send comments about this topic to Microsoft

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.