WdfRequestGetStatus-Funktion (wdfrequest.h)
[Gilt für KMDF und UMDF]
Die WdfRequestGetStatus-Methode gibt den status einer E/A-Anforderung zurück.
Syntax
NTSTATUS WdfRequestGetStatus(
[in] WDFREQUEST Request
);
Parameter
[in] Request
Ein Handle für ein Frameworkanforderungsobjekt.
Rückgabewert
WdfRequestGetStatus gibt einen NTSTATUS-Wert zurück. Weitere Informationen dazu, welcher Wert zurückgegeben werden kann, finden Sie im folgenden Abschnitt Hinweise.
Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.
Hinweise
Die WdfRequestGetStatus-Methode gibt eine der folgenden Rückgaben zurück:
- Wenn der Aufruf eines Treibers an WdfRequestSend erfolgreich ist, gibt WdfRequestGetStatus den status Wert zurück, der vom Treiber festgelegt wird, der WdfRequestComplete aufruft, um die angegebene Anforderung abzuschließen. Der Treiber ruft in der Regel WdfRequestGetStatus aus einer CompletionRoutine-Rückruffunktion auf.
- Wenn der Aufruf eines Treibers an WdfRequestSend fehlschlägt, gibt WdfRequestGetStatus einen status Wert zurück, den das Framework zur Beschreibung des Fehlers festgelegt hat. Der Treiber kann WdfRequestGetStatus unmittelbar nach dem Aufruf von WdfRequestSend aufrufen.
Weitere Informationen zum Abschluss der Anforderung finden Sie unter Abschließen von E/A-Anforderungen.
Beispiele
Das folgende Codebeispiel stammt aus dem KbFiltr-Beispieltreiber . In diesem Beispiel wird eine E/A-Anforderung an ein E/A-Ziel gesendet. Wenn WdfRequestSend fehlschlägt , verwendet das Beispiel den WdfRequestGetStatus-Rückgabewert als Eingabe für WdfRequestComplete.
VOID
KbFilter_ForwardRequest(
IN WDFREQUEST Request,
IN WDFIOTARGET Target
)
{
WDF_REQUEST_SEND_OPTIONS options;
BOOLEAN ret;
NTSTATUS status;
WDF_REQUEST_SEND_OPTIONS_INIT(
&options,
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET
);
ret = WdfRequestSend(
Request,
Target,
&options
);
if (ret == FALSE) {
status = WdfRequestGetStatus (Request);
DebugPrint(("WdfRequestSend failed: 0x%x\n", status));
WdfRequestComplete(
Request,
status
);
}
return;
}
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfrequest.h (include Wdf.h) |
Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), RequestGetStatusValid(kmdf) |