PFN_HANDLE_KMD_MESSAGE función de devolución de llamada (netdispumdddi.h)

Llamado por el sistema operativo para controlar el mensaje asincrónico del modo kernel que recibe el controlador en modo usuario de Miracast cuando el controlador de miniporte de pantalla llama a la función DxgkCbMiracastSendMessage .

Sintaxis

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
)
{...}

Parámetros

[in] pMiracastContext

Puntero a un contexto asociado a un adaptador de pantalla.

El sistema operativo obtuvo el contexto cuando llamó a la función CreateMiracastContext del controlador del modo de usuario de Miracast.

[in] InputBufferSize

Tamaño del búfer de entrada pInputBuffer, proporcionado por el sistema operativo.

[in] pInputBuffer

Puntero al búfer de entrada proporcionado por el sistema operativo.

[in] OutputBufferSize

Tamaño del búfer de salida pOutputBuffer, proporcionado por el sistema operativo.

[out] pOutputBuffer

Puntero al búfer de salida proporcionado por el sistema operativo.

[out] pBytesReturned

Puntero a un búfer, proporcionado por el sistema operativo, que contiene el número de bytes devueltos que el controlador de miniporte de pantalla escribió en pOutputBuffer.

Valor devuelto

Si se ejecuta correctamente, esta función devuelve STATUS_SUCCESS. De lo contrario, la función devuelve un código de error definido en el encabezado Ntstatus.h.

Comentarios

Seguridad para subprocesos

Cuando se llama a esta función, es posible que también se haya llamado en otro subproceso. Por lo tanto, el controlador es responsable de sincronizar varias llamadas a HandleKernelModeMessage si es necesario.

El sistema operativo garantiza que no se llama a esta función cuando se llama a CreateMiracastContext, DestroyMiracastContext, StartMiracastSession y StopMiracastSession . Todos los mensajes que envía el controlador de miniporte de pantalla durante el inicio de una sesión conectada de Miracast (StartMiracastSession) se bloquean hasta que se haya completado el proceso de inicio de la sesión. El sistema operativo también bloquea todos los mensajes que envía el controlador de miniporte de pantalla durante o después de una llamada para detener la sesión de Miracast (StopMiracastSession).

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8.1
Servidor mínimo compatible Windows Server 2012 R2
Plataforma de destino Escritorio
Encabezado netdispumdddi.h (incluya Netdispumdddi.h)

Consulte también

CreateMiracastContext

DestroyMiracastContext

DxgkCbMiracastSendMessage

StartMiracastSession

StopMiracastSession