Compartilhar via


Função D3DKMTOutputDuplPresent (d3dkmthk.h)

Envia um comando presente da cadeia de troca da API de Duplicação da Área de Trabalho do DWM (Gerenciador de Janelas da Área de Trabalho) para o subsistema de kernel de elementos gráficos do Microsoft DirectX (Dxgkrnl.sys).

Sintaxe

NTSTATUS D3DKMTOutputDuplPresent(
  [in] const D3DKMT_OUTPUTDUPLPRESENT *unnamedParam1
);

Parâmetros

[in] unnamedParam1

Um ponteiro para uma estrutura D3DKMT_OUTPUTDUPLPRESENT que descreve parâmetros para a operação atual.

Retornar valor

Retorna um dos seguintes valores:

Código de retorno Descrição
STATUS_SUCCESS A operação atual foi executada com êxito.
STATUS_DEVICE_REMOVED O adaptador gráfico foi interrompido ou o contexto de exibição foi redefinido.
STATUS_INVALID_PARAMETER Os parâmetros foram validados e determinados como incorretos.
STATUS_NO_MEMORY D3DKMTOutputDuplPresent não pôde ser concluído devido à memória insuficiente.
STATUS_GRAPHICS_ALLOCATION_INVALID O identificador da superfície primária foi invalidado devido a uma alteração no modo de exibição. Se o ICD (driver de cliente instalável) openGL receber esse código de erro, ele deverá reabrir ou recriar o identificador primário, substituir todas as referências no buffer de comando para o identificador antigo pelo novo identificador e, em seguida, reenviar o buffer.
STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE Ocorreu um erro no contexto do dispositivo de renderização especificado pelo membro hContext do D3DKMT_OUTPUTDUPLPRESENT .
Nota: Esse código de erro não indica o início de um processo de TDR (Detecção e Recuperação de Tempo Limite) ou que a GPU parou de responder.
Por exemplo, o subsistema de kernel de elementos gráficos DirectX coloca um dispositivo em um estado de erro se o driver de miniporta de exibição indicou que um buffer DMA enviado desse dispositivo causou uma falha ou se o gerenciador de memória de vídeo não pôde paginar todas as alocações necessárias para um buffer de DMA mesmo depois de dividir o buffer de DMA. Depois que um dispositivo está em um estado de erro, ele não pode executar mais operações e deve ser destruído e recriado. O ICD pode chamar a função D3DKMTGetDeviceState para determinar um motivo mais preciso para o erro.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Servidor mínimo com suporte Windows Server 2012
Plataforma de Destino Universal
Cabeçalho d3dkmthk.h (inclua D3dkmthk.h)
Biblioteca Gdi32.lib
DLL Gdi32.dll

Confira também

D3DKMTGetDeviceState

D3DKMT_OUTPUTDUPLPRESENT