Abrufen von Informationen zu einer E/A-Anforderung
Vor der Verarbeitung einer E/A-Anforderung muss ein Treiber den Anforderungstyp bestimmen. Wenn ein frameworkbasierter Treiber E/A-Warteschlangen für ein Gerät erstellt, richtet er in der Regel die E/A-Warteschlangen und Anforderungshandler so ein, dass jeder Warteschlangen- oder Anforderungshandler Anforderungen eines bestimmten Typs empfängt (Lese-, Schreib- oder Geräte-E/A-Steuerelement).
Nach der Ermittlung des Anforderungstyps muss der Treiber die Eingabe- und Ausgabepuffer der Anforderung abrufen, wenn sie benötigt werden. Informationen zum Abrufen der Puffer einer Anforderung finden Sie unter Zugreifen auf Datenpuffer in Framework-Based Treibern.
Um zusätzliche Informationen zu einer E/A-Anforderung bereitzustellen, die ein Treiber empfangen hat, definiert das Frameworkanforderungsobjekt die folgenden Methoden:
WdfRequestGetIoQueue, das ein Handle an die E/A-Warteschlange zurückgibt, von der die E/A-Anforderung übermittelt wurde.
WdfRequestGetRequestorMode, der den Prozessorzugriffsmodus (Benutzer oder Kernel) des Absenders der Anforderung zurückgibt.
WdfRequestGetFileObject, das ein Handle für das Frameworkdateiobjekt zurückgibt, das der Anforderung zugeordnet ist.
WdfRequestWdmGetIrp, der die WDM-IRP-Struktur zurückgibt, die der Anforderung zugeordnet ist.
WdfRequestGetParameters, das Nicht-IRP-Anforderungsparameter im WDM-Format abruft.
Nachdem ein Treiber eine E/A-Anforderung abgeschlossen hat, können andere Treiber im Treiberstapel zusätzliche Anforderungsobjektmethoden aufrufen, um Informationen zur Anforderungserfüllung abzurufen. Weitere Informationen zu diesen zusätzlichen Methoden finden Sie unter Abschließen von E/A-Anforderungen.