Compartir a través de


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

Lo llama el controlador de pantalla en modo de usuario para enviar al controlador de miniporte de pantalla en modo kernel una solicitud de control de E/S sincrónica. El tipo de datos de esta función es PFN_MIRACAST_IO_CONTROL.

Sintaxis

PFN_MIRACAST_IO_CONTROL PfnMiracastIoControl;

NTSTATUS PfnMiracastIoControl(
  [in]            HANDLE hMiracastDeviceHandle,
  [in]            BOOL HardwareAccess,
  [in]            UINT InputBufferSize,
  [in]            VOID *pInputBuffer,
  [in]            UINT OutputBufferSize,
  [out]           VOID *pOutputBuffer,
  [out, optional] UINT *pBytesReturned
)
{...}

Parámetros

[in] hMiracastDeviceHandle

Identificador que representa un dispositivo Miracast. El controlador del modo de usuario de Miracast obtuvo previamente este identificador como el parámetro hMiracastDeviceHand le en una llamada a la función createMiracastContext .

[in] HardwareAccess

Valor booleano que indica si esta solicitud de control de E/S del controlador de pantalla en modo de usuario debe vaciar todos los búferes DMA de GPU pendientes.

No se recomienda que el controlador establezca este valor en TRUE excepto cuando sea necesario, ya que el vaciado de la GPU creará una sobrecarga de procesamiento considerable.

[in] InputBufferSize

Tamaño, en bytes, del búfer de entrada al que apunta pInputBuffer.

[in] pInputBuffer

Puntero al búfer de entrada. El parámetro InputBufferSize especifica el tamaño del búfer.

[in] OutputBufferSize

Tamaño, en bytes, del búfer de salida al que apunta pOutputBuffer.

[out] pOutputBuffer

Puntero proporcionado por el controlador al búfer de salida. El parámetro OutputBufferSize especifica el tamaño del búfer.

[out, optional] pBytesReturned

Puntero opcional proporcionado por el controlador a un UINTvariable -type que contiene el número de bytes que devolvió el controlador de miniporte para mostrar.

Valor devuelto

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

Observaciones

Si el controlador en modo de usuario de Miracast llama a MiracastIoControl cuando el sistema operativo inicia una sesión de Miracast y, si el subproceso de llamada no es el subproceso en el que el sistema operativo llama a la función StartMiracastSession, el sistema operativo bloquea el MiracastIoControl llamada hasta que finalice la sesión de inicio de Miracast. Si el controlador en modo de usuario llama a MiracastIoControl en el mismo contexto que se usa en el CreateMiracastContext o funciones StartMiracastSession, el sistema operativo procesará la llamada.

Si el controlador en modo de usuario de Miracast llama MiracastIoControl cuando el sistema operativo detiene una sesión de Miracast y si el subproceso de llamada no es el subproceso en el que el sistema operativo llama a la función StopMiracastSession, el sistema operativo producirá un error en esta llamada. Si el controlador en modo de usuario llama MiracastIoControl en el mismo contexto que se usa en el StopMiracastSession o funciones de DestroyMiracastContext, el sistema operativo procesará la llamada.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 8.1
servidor mínimo admitido Windows Server 2012 R2
de la plataforma de destino de Escritorio
encabezado de netdispumdddi.h (include Netdispumdddi.h)

Consulte también

CreateMiracastContext

DestroyMiracastContext

StartMiracastSession

StopMiracastSession