Freigeben über


EVT_WDF_IO_QUEUE_IO_WRITE Rückruffunktion (wdfio.h)

[Gilt für KMDF und UMDF]

Die EvtIoWrite-Ereignisrückruffunktion eines Treibers verarbeitet eine angegebene Schreibanforderung.

Syntax

EVT_WDF_IO_QUEUE_IO_WRITE EvtWdfIoQueueIoWrite;

void EvtWdfIoQueueIoWrite(
  [in] WDFQUEUE Queue,
  [in] WDFREQUEST Request,
  [in] size_t Length
)
{...}

Parameter

[in] Queue

Ein Handle für das Framework-Warteschlangenobjekt, das der E/A-Anforderung zugeordnet ist.

[in] Request

Ein Handle für ein Frameworkanforderungsobjekt.

[in] Length

Die Anzahl der zu schreibenden Bytes.

Rückgabewert

Keine

Bemerkungen

Ein Treiber registriert eine EvtIoWrite-Rückruffunktion , wenn er WdfIoQueueCreate aufruft. Weitere Informationen zum Aufrufen von WdfIoQueueCreate finden Sie unter Erstellen von E/A-Warteschlangen.

Wenn ein Treiber eine EvtIoWrite-Rückruffunktion für die E/A-Warteschlange eines Geräts registriert hat, empfängt die Rückruffunktion jede Schreibanforderung aus der Warteschlange. Weitere Informationen finden Sie unter Anforderungshandler.

Die EvtIoWrite-Rückruffunktion muss jede empfangene E/A-Anforderung auf eine bestimmte Weise verarbeiten. Weitere Informationen finden Sie unter Verarbeiten von E/A-Anforderungen.

Schreibanforderungen erfordern einen Eingabepuffer, der Daten enthält, die der Treiber empfängt. Informationen dazu, wie der Treiber auf den Puffer einer Schreibanforderung zugreifen kann, finden Sie unter Zugreifen auf Datenpuffer in Framework-Based Drivers.

Diese Rückruffunktion kann unter IRQL <= DISPATCH_LEVEL aufgerufen werden, es sei denn, der ExecutionLevel-Member der WDF_OBJECT_ATTRIBUTES struktur des Geräts oder Treibers ist auf WdfExecutionLevelPassive festgelegt.

Wenn der IRQL PASSIVE_LEVEL ist, ruft das Framework die Rückruffunktion in einem kritischen Bereich auf.

Weitere Informationen zu IRQL-Ebenen für Anforderungshandler finden Sie unter Verwenden der automatischen Synchronisierung.

Die EvtIoWrite-Rückruffunktion eines Treibers sollte die folgenden Warteschlangenobjektmethoden nicht aufrufen:

WdfIoQueueDrainSynchronously
WdfIoQueuePurgeSynchronly
WdfIoQueueStopSynchronously

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Kopfzeile wdfio.h (einschließen von Wdf.h)
IRQL <= DISPATCH_LEVEL (siehe Abschnitt "Hinweise")

Weitere Informationen

EvtIoDefault

WDF_OBJECT_ATTRIBUTES

WdfIoQueueErstellen