PFN_MIRACAST_IO_CONTROL Rückruffunktion (netdispumdddi.h)
Wird vom Benutzermodus-Anzeigetreiber aufgerufen, um dem Kernelmodus-Display-Miniporttreiber eine synchrone E/A-Steuerungsanforderung zu senden. Der Datentyp dieser Funktion ist PFN_MIRACAST_IO_CONTROL.
Syntax
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
)
{...}
Parameter
[in] hMiracastDeviceHandle
Ein Handle, das ein Miracast-Gerät darstellt. Der Miracast-Benutzermodustreiber hat dieses Handle zuvor als hMiracastDeviceHandle-Parameter in einem Aufruf der CreateMiracastContext-Funktion abgerufen.
[in] HardwareAccess
Ein boolescher Wert, der angibt, ob diese E/A-Steuerungsanforderung vom Benutzermodusanzeigetreiber alle ausstehenden GPU DMA-Puffer leeren muss.
Es wird nicht empfohlen, diesen Wert vom Treiber auf TRUE festzulegen, außer wenn dies erforderlich ist, da das Leeren der GPU zu einem erheblichen Verarbeitungsaufwand führt.
[in] InputBufferSize
Die Größe des Eingabepuffers in Bytes, auf den pInputBuffer verweist.
[in] pInputBuffer
Ein Zeiger auf den Eingabepuffer. Der Parameter InputBufferSize gibt die Größe des Puffers an.
[in] OutputBufferSize
Die Größe des Ausgabepuffers in Bytes, auf den pOutputBuffer verweist.
[out] pOutputBuffer
Ein vom Treiber bereitgestellter Zeiger auf den Ausgabepuffer. Der Parameter OutputBufferSize gibt die Größe des Puffers an.
[out, optional] pBytesReturned
Ein optionaler vom Treiber bereitgestellter Zeiger auf eine Variable vom Typ UINT, die die Anzahl der Bytes enthält, die der Anzeige-Miniporttreiber zurückgegeben hat.
Rückgabewert
Bei Erfolg gibt das Betriebssystem STATUS_SUCCESS zurück. Andernfalls gibt die Funktion einen im Ntstatus.h-Header definierten Fehlercode zurück.
Hinweise
Wenn der Miracast-Benutzermodustreiber MiracastIoControl aufruft , wenn das Betriebssystem eine Miracast-Sitzung startet, und wenn der aufrufende Thread nicht der Thread ist, in dem das Betriebssystem die StartMiracastSession-Funktion aufruft, blockiert das Betriebssystem den MiracastIoControl-Aufruf , bis die Miracast-Startsitzung beendet ist. Wenn der Benutzermodustreiber MiracastIoControl im gleichen Kontext aufruft, der in den Funktionen CreateMiracastContext oder StartMiracastSession verwendet wird, verarbeitet das Betriebssystem den Aufruf.
Wenn der Miracast-Benutzermodustreiber MiracastIoControl aufruft, wenn das Betriebssystem eine Miracast-Sitzung beendet, und wenn der aufrufende Thread nicht der Thread ist, in dem das Betriebssystem die StopMiracastSession-Funktion aufruft, schlägt das Betriebssystem diesen Aufruf fehl. Wenn der Benutzermodustreiber MiracastIoControl im gleichen Kontext aufruft, der in den Funktionen StopMiracastSession oder DestroyMiracastContext verwendet wird, verarbeitet das Betriebssystem den Aufruf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8.1 |
Unterstützte Mindestversion (Server) | Windows Server 2012 R2 |
Zielplattform | Desktop |
Kopfzeile | netdispumdddi.h (include Netdispumdddi.h) |