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)

Weitere Informationen

CreateMiracastContext

DestroyMiracastContext

StartMiracastSession

StopMiracastSession