IQueueCallbackDeviceIoControl::OnDeviceIoControl-Methode (wudfddi.h)
Warnung
UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 für neuere Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF.
Die OnDeviceIoControl-Methode wird aufgerufen, um eine Geräte-E/A-Steuerungsanforderung zu behandeln, wenn eine Anwendung einen bestimmten Vorgang auf einem Gerät über die Microsoft Win32 OnDeviceIoControl-Funktion ausführt.
Syntax
void OnDeviceIoControl(
[in] IWDFIoQueue *pWdfQueue,
[in] IWDFIoRequest *pWdfRequest,
[in] ULONG ControlCode,
SIZE_T InputBufferSizeInBytes,
SIZE_T OutputBufferSizeInBytes
);
Parameter
[in] pWdfQueue
Ein Zeiger auf die IWDFIoQueue-Schnittstelle für das E/A-Warteschlangenobjekt, von dem die Anforderung eingeht.
[in] pWdfRequest
Ein Zeiger auf die IWDFIoRequest-Schnittstelle , die das Frameworkanforderungsobjekt darstellt.
[in] ControlCode
Der vom Treiber definierte oder systemdefinierte E/A-Steuerungscode (IOCTL), der den auszuführenden spezifischen Vorgang identifiziert und der Anforderung zugeordnet ist.
InputBufferSizeInBytes
Die Größe des Eingabepuffers für die Anforderung in Bytes.
OutputBufferSizeInBytes
Die Größe des Ausgabepuffers für die Anforderung in Bytes.
Rückgabewert
Keine
Bemerkungen
Ein Treiber registriert die IQueueCallbackDeviceIoControl-Schnittstelle , wenn der Treiber die IWDFDevice::CreateIoQueue-Methode aufruft, um eine E/A-Warteschlange zu erstellen oder die Standard-E/A-Warteschlange zu konfigurieren.
Ein Treiber kann eine einzelne OnDeviceIoControl-Methode für alle E/A-Warteschlangen oder separate OnDeviceIoControl-Methoden für jede E/A-Warteschlange implementieren.
Die OnDeviceIoControl-Methode empfängt jeden Geräte-E/A-Steuerelementanforderungstyp aus einer Warteschlange. (Der Anforderungstyp wird durch den WdfRequestDeviceIoControl-Wert des WDF_REQUEST_TYPE Enumerationstyps für die Anforderung identifiziert.)
Weitere Informationen zu den Methoden des Treibers, die Warteschlangen zugeordnet sind und die vom Framework aufgerufen werden, finden Sie unter Rückruffunktionen für E/A-Warteschlangenwarteschlangen. Die OnDeviceIoControl-Methode muss jede empfangene Geräte-E/A-Steuerungsanforderung verarbeiten. Weitere Informationen zur Verarbeitung von E/A-Anforderungen durch UMDF-Treiber finden Sie unter Verarbeiten von E/A-Anforderungen.
Der Treiber kann die Methoden IWDFIoRequest::GetDeviceIoControlParameters, IWDFIoRequest::GetInputMemory und IWDFIoRequest::GetOutputMemory aufrufen, um Informationen zur Anforderung und den Eingabe- und Ausgabepuffern abzurufen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | wudfddi.h (include Wudfddi.h) |