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 del 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 anteriormente este identificador como el parámetro hMiracastDeviceHandle 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 sustancial.
[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 una variable de tipo UINT que contiene el número de bytes devueltos por el controlador de minipuerto 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.
Comentarios
Si el controlador del 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 la llamada a MiracastIoControl 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 las funciones CreateMiracastContext o StartMiracastSession , el sistema operativo procesará la llamada.
Si el controlador del modo de usuario de Miracast llama a MiracastIoControl cuando el sistema operativo detenga una sesión de Miracast y, si el subproceso que realiza la 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 a MiracastIoControl en el mismo contexto que se usa en las funciones StopMiracastSession o DestroyMiracastContext , el sistema operativo procesará la llamada.
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) |