EVT_WDF_IO_QUEUE_IO_READ Rückruffunktion (wdfio.h)
[Gilt für KMDF und UMDF]
Die EvtIoRead-Ereignisrückruffunktion eines Treibers verarbeitet eine angegebene Leseanforderung.
Syntax
EVT_WDF_IO_QUEUE_IO_READ EvtWdfIoQueueIoRead;
void EvtWdfIoQueueIoRead(
[in] WDFQUEUE Queue,
[in] WDFREQUEST Request,
[in] size_t Length
)
{...}
Parameter
[in] Queue
Ein Handle für das Frameworkwarteschlangenobjekt, das der E/A-Anforderung zugeordnet ist.
[in] Request
Ein Handle für ein Frameworkanforderungsobjekt.
[in] Length
Die Anzahl der zu lesenden Bytes.
Rückgabewert
Keine
Bemerkungen
Ein Treiber registriert eine EvtIoRead-Rückruffunktion , wenn er WdfIoQueueCreate aufruft. Weitere Informationen zum Aufrufen von WdfIoQueueCreate finden Sie unter Erstellen von E/A-Warteschlangen.
Wenn ein Treiber eine EvtIoRead-Rückruffunktion für die E/A-Warteschlange eines Geräts registriert hat, empfängt die Rückruffunktion jede Leseanforderung aus der Warteschlange. Weitere Informationen finden Sie unter Anforderungshandler.
Die EvtIoRead-Rückruffunktion muss jede empfangene E/A-Anforderung in irgendeiner Weise verarbeiten. Weitere Informationen finden Sie unter Verarbeiten von E/A-Anforderungen.
Leseanforderungen erfordern einen Ausgabepuffer, der die vom Treiber bereitgestellten Daten empfängt. Informationen dazu, wie der Treiber auf den Puffer einer Leseanforderung zugreifen kann, finden Sie unter Zugreifen auf Datenpuffer in Framework-Based Treibern.
Diese Rückruffunktion kann unter IRQL <= DISPATCH_LEVEL aufgerufen werden, es sei denn, das ExecutionLevel-Element 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 EvtIoRead-Rückruffunktion eines Treibers sollte die folgenden Warteschlangenobjektmethoden nicht aufrufen:
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) |