PFN_MIRACAST_IO_CONTROL funzione di callback (netdispumdddi.h)
Chiamato dal driver di visualizzazione in modalità utente per inviare il driver miniport in modalità kernel a una richiesta di controllo I/O sincrona. Il tipo di dati di questa funzione è PFN_MIRACAST_IO_CONTROL.
Sintassi
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
)
{...}
Parametri
[in] hMiracastDeviceHandle
Handle che rappresenta un dispositivo Miracast. Il driver in modalità utente Miracast ha ottenuto in precedenza questo handle come parametro hMiracastDeviceHandle in una chiamata alla funzione CreateMiracastContext .
[in] HardwareAccess
Valore booleano che indica se questa richiesta di controllo I/O dal driver di visualizzazione in modalità utente deve scaricare tutti i buffer DMA GPU in sospeso.
Non è consigliabile che il driver imposta questo valore su TRUE , tranne se necessario, perché lo scaricamento della GPU creerà un sovraccarico di elaborazione significativo.
[in] InputBufferSize
Dimensioni, in byte, del buffer di input a cui fa riferimento pInputBuffer.
[in] pInputBuffer
Puntatore al buffer di input. Il parametro InputBufferSize specifica le dimensioni del buffer.
[in] OutputBufferSize
Dimensioni, in byte, del buffer di output a cui fa riferimento pOutputBuffer.
[out] pOutputBuffer
Puntatore fornito dal driver al buffer di output. Il parametro OutputBufferSize specifica le dimensioni del buffer.
[out, optional] pBytesReturned
Puntatore facoltativo fornito dal driver a una variabile di tipo UINT che contiene il numero di byte restituiti dal driver miniport visualizzato.
Valore restituito
In caso di esito positivo, il sistema operativo restituisce STATUS_SUCCESS. In caso contrario, la funzione restituisce un codice di errore definito nell'intestazione Ntstatus.h.
Commenti
Se il driver in modalità utente Miracast chiama MiracastIoControl quando il sistema operativo avvia una sessione Miracast e se il thread chiamante non è il thread in cui il sistema operativo chiama la funzione StartMiracastSession , il sistema operativo blocca la chiamata MiracastIoControl fino al termine della sessione di avvio miracast. Se il driver in modalità utente chiama MiracastIoControl nello stesso contesto usato nelle funzioni CreateMiracastContext o StartMiracastSession, il sistema operativo elabora la chiamata.
Se il driver in modalità utente Miracast chiama MiracastIoControl quando il sistema operativo arresta una sessione Miracast e se il thread chiamante non è il thread in cui il sistema operativo chiama la funzione StopMiracastSession , il sistema operativo avrà esito negativo. Se il driver in modalità utente chiama MiracastIoControl nello stesso contesto usato nelle funzioni StopMiracastSession o DestroyMiracastContext, il sistema operativo elabora la chiamata.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8.1 |
Server minimo supportato | Windows Server 2012 R2 |
Piattaforma di destinazione | Desktop |
Intestazione | netdispumdddi.h (include Netdispumdddi.h) |