Freigeben über


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)

Siehe auch