PFN_MIRACAST_IO_CONTROL Rückruffunktion (netdispumdddi.h)
Vom Anzeigetreiber für den Benutzermodus aufgerufen, um den Kernelmodus-Miniporttreiber an 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-Steuerelementanforderung vom Anzeigetreiber für den Benutzermodus alle ausstehenden GPU-DMA-Puffer leeren muss.
Es wird nicht empfohlen, dass der Treiber diesen Wert auf TRUE- festgelegt, außer wenn dies erforderlich ist, da durch das Leeren der GPU ein erheblicher Verarbeitungsaufwand entsteht.
[in] InputBufferSize
Die Größe des Eingabepuffers in Bytes, auf die pInputBufferverweist.
[in] pInputBuffer
Ein Zeiger auf den Eingabepuffer. Der InputBufferSize Parameter gibt die Größe des Puffers an.
[in] OutputBufferSize
Die Größe des Ausgabepuffers in Bytes, auf die pOutputBufferverweist.
[out] pOutputBuffer
Ein vom Treiber bereitgestellter Zeiger auf den Ausgabepuffer. Der OutputBufferSize Parameter gibt die Größe des Puffers an.
[out, optional] pBytesReturned
Ein optionaler vom Treiber bereitgestellter Zeiger auf eine UINT-Typvariable, die die Anzahl der Bytes enthält, die der angezeigte Miniporttreiber zurückgegeben hat.
Rückgabewert
Bei Erfolg gibt das Betriebssystem STATUS_SUCCESSzurück. Andernfalls gibt die Funktion einen Fehlercode zurück, der im Ntstatus.h-Header definiert ist.
Bemerkungen
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 wie im CreateMiracastContext oder StartMiracastSession--Funktionen, 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 wie in der StopMiracastSession oder DestroyMiracastContext Funktionen, verarbeitet das Betriebssystem den Aufruf.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 8.1 |
mindestens unterstützte Server- | Windows Server 2012 R2 |
Zielplattform- | Desktop |
Header- | netdispumdddi.h (include Netdispumdddi.h) |