Partager via


D3DKMTOutputDuplPresent, fonction (d3dkmthk.h)

Envoie une commande présente à partir de l’API de duplication de bureau chaîne d’échange du Gestionnaire de fenêtres de bureau (DWM) au sous-système du noyau graphique Microsoft DirectX (Dxgkrnl.sys).

Syntaxe

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

Paramètres

[in] unnamedParam1

Pointeur vers une structure D3DKMT_OUTPUTDUPLPRESENT qui décrit les paramètres de l’opération actuelle.

Valeur de retour

Retourne l’une des valeurs suivantes :

Retourner le code Description
STATUS_SUCCESS L’opération actuelle a été effectuée avec succès.
STATUS_DEVICE_REMOVED La carte graphique a été arrêtée ou le contexte d’affichage a été réinitialisé.
STATUS_INVALID_PARAMETER Les paramètres ont été validés et déterminés comme incorrects.
STATUS_NO_MEMORY D3DKMTOutputDuplPresent n’a pas pu se terminer en raison d’une mémoire insuffisante.
STATUS_GRAPHICS_ALLOCATION_INVALID Le handle de surface principal a été invalidé en raison d’une modification du mode d’affichage. Si le pilote client installable OpenGL reçoit ce code d’erreur, il doit rouvrir ou recréer le handle principal, remplacer toutes les références dans la mémoire tampon de commande par l’ancien handle par le nouveau handle, puis renvoyer la mémoire tampon.
STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE Une erreur s’est produite sur le contexte de l’appareil de rendu spécifié par le membre hContext de D3DKMT_OUTPUTDUPLPRESENT.
Remarque : Ce code d’erreur n’indique pas l’initiation d’un processus TDR (Timeout Detection and Recovery) ou que le GPU a cessé de répondre.
Par exemple, le sous-système du noyau graphique DirectX place un appareil dans un état d’erreur si le pilote de miniport d’affichage indique qu’une mémoire tampon DMA envoyée à partir de cet appareil a provoqué une erreur ou si le gestionnaire de mémoire vidéo n’a pas pu pager toutes les allocations requises pour une mémoire tampon DMA, même après le fractionnement de la mémoire tampon DMA. Une fois qu’un appareil est dans un état d’erreur, il ne peut pas effectuer d’opérations supplémentaires et doit être détruit et recréé. L’ICD peut appeler la fonction D3DKMTGetDeviceState pour déterminer une raison plus précise de l’erreur.

Exigences

Exigence Valeur
client minimum pris en charge Windows 8
serveur minimum pris en charge Windows Server 2012
plateforme cible Universel
d’en-tête d3dkmthk.h (include D3dkmthk.h)
bibliothèque Gdi32.lib
DLL Gdi32.dll

Voir aussi

D3DKMTGetDeviceState

D3DKMT_OUTPUTDUPLPRESENT