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. Es werden keine neuen Features zu UMDF 1 hinzugefügt, und es gibt eingeschränkte Unterstützung für UMDF 1 für neuere Versionen von Windows 10. 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 verarbeiten, 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 Framework-Anforderungsobjekt darstellt.
[in] ControlCode
Der vom Treiber definierte oder vom System definierte I/O-Steuerungscode (IOCTL), der den auszuführenden spezifischen Vorgang identifiziert und der 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
Nichts
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 das Framework aufruft, finden Sie unter E/A-Ereignisrückruffunktionen. Die OnDeviceIoControl--Methode muss jede empfangene Geräte-E/A-Steuerungsanforderung verarbeiten. Weitere Informationen dazu, wie UMDF-Treiber E/A-Anforderungen verarbeiten, finden Sie unter Verarbeiten von E/A-Anforderungen.
Der Treiber kann die IWDFIoRequest::GetDeviceIoControlParameters, IWDFIoRequest::GetInputMemoryund IWDFIoRequest::GetOutputMemory Methoden aufrufen, um Informationen über die Anforderung und die Eingabe- und Ausgabepuffer abzurufen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Fenster |
Header- | wudfddi.h (include Wudfddi.h) |