PFN_HANDLE_KMD_MESSAGE fonction de rappel (netdispumdddi.h)

Appelé par le système d’exploitation pour gérer le message en mode noyau asynchrone que le pilote en mode utilisateur Miracast reçoit lorsque le pilote miniport d’affichage appelle la fonction DxgkCbMiracastSendMessage .

Syntaxe

PFN_HANDLE_KMD_MESSAGE PfnHandleKmdMessage;

NTSTATUS PfnHandleKmdMessage(
  [in]  PVOID pMiracastContext,
  [in]  UINT InputBufferSize,
  [in]  VOID *pInputBuffer,
  [in]  UINT OutputBufferSize,
  [out] VOID *pOutputBuffer,
  [out] UINT *pBytesReturned
)
{...}

Paramètres

[in] pMiracastContext

Pointeur vers un contexte associé à une carte d’affichage.

Le système d’exploitation a obtenu le contexte lorsqu’il a appelé la fonction CreateMiracastContext du pilote en mode utilisateur Miracast.

[in] InputBufferSize

Taille de la mémoire tampon d’entrée pInputBuffer, fournie par le système d’exploitation.

[in] pInputBuffer

Pointeur vers la mémoire tampon d’entrée, fourni par le système d’exploitation.

[in] OutputBufferSize

Taille de la mémoire tampon de sortie pOutputBuffer, fournie par le système d’exploitation.

[out] pOutputBuffer

Pointeur vers la mémoire tampon de sortie, fourni par le système d’exploitation.

[out] pBytesReturned

Pointeur vers une mémoire tampon, fournie par le système d’exploitation, qui contient le nombre d’octets retournés que le pilote d’affichage miniport a écrit dans pOutputBuffer.

Valeur de retour

En cas de réussite, cette fonction retourne STATUS_SUCCESS. Sinon, la fonction retourne un code d’erreur défini dans l’en-tête Ntstatus.h.

Remarques

Cohérence de thread

Quand cette fonction est appelée, il est possible qu’elle ait également été appelée dans un autre thread. Le pilote est donc responsable de la synchronisation de plusieurs appels à HandleKernelModeMessage si nécessaire.

Le système d’exploitation garantit que cette fonction n’est pas appelée lorsque CreateMiracastContext, DestroyMiracastContext, StartMiracastSession et StopMiracastSession sont appelés. Tous les messages que le pilote display miniport envoie au démarrage d’une session connectée Miracast (StartMiracastSession) sont bloqués jusqu’à ce que le processus de démarrage de session soit terminé. Le système d’exploitation bloque également tous les messages envoyés par le pilote miniport d’affichage pendant ou après un appel pour arrêter la session Miracast (StopMiracastSession).

Configuration requise

   
Client minimal pris en charge Windows 8.1
Serveur minimal pris en charge Windows Server 2012 R2
Plateforme cible Desktop (Expérience utilisateur)
En-tête netdispumdddi.h (include Netdispumdddi.h)

Voir aussi

CreateMiracastContext

DestroyMiracastContext

DxgkCbMiracastSendMessage

StartMiracastSession

StopMiracastSession