Freigeben über


WdfRequestIsCanceled-Funktion (wdfrequest.h)

[Gilt für KMDF und UMDF]

Die WdfRequestIsCanceled--Methode bestimmt, ob der E/A-Manager versucht hat, eine angegebene E/A-Anforderung abzubrechen.

Syntax

BOOLEAN WdfRequestIsCanceled(
  [in] WDFREQUEST Request
);

Parameter

[in] Request

Ein Handle zu einem Framework-Anforderungsobjekt.

Rückgabewert

WdfRequestIsCanceled gibt TRUE zurück, wenn der E/A-Manager versucht hat, die angegebene E/A-Anforderung abzubrechen. Diese Methode kann TRUE- zurückgeben, auch wenn der aufrufende Treiber die Anforderung nicht besitzt. Wenn der Treiber die Anforderung nicht besitzt, sollte er nicht WdfRequestIsCanceledaufrufen. Weitere Informationen finden Sie in den Anmerkungen.

WdfRequestIsCanceled gibt FALSE- aus einem der folgenden Gründe zurück:

Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.

Bemerkungen

Wenn Ihr Treiber WdfRequestMarkCancelable oder WdfRequestMarkCancelable Ex nicht aufgerufen hat, um eine EvtRequestCancel Rückruffunktion zu registrieren, aber wenn Sie möchten, dass ihr Treiber ermitteln soll, ob der E/A-Manager versucht hat, eine E/A-Anforderung abzubrechen, kann der Treiber WdfRequestIsCanceledaufrufen.

Wenn der Treiber WdfRequestMarkCancelable oder WdfRequestMarkCancelableEx-aufgerufen hat, muss er WdfRequestUnmarkCancelable- aufrufen, bevor WdfRequestIsCanceledaufgerufen wird.

Ein Treiber kann WdfRequestIsCanceled- nur aufrufen, wenn der Treiber der E/A-Anforderung besitzt.

Wenn WdfRequestIsCanceledTRUEzurückgibt, sollte der Treiber die Anforderung abbrechen, indem WdfRequestComplet e mit einem Status Parameter von STATUS_CANCELLED aufgerufen wird. Wenn der Treiber versucht, eine Anforderung abzuschließen, die er nicht besitzt, kann der Treiber dazu führen, dass das System abstürzt.

Weitere Informationen zu WdfRequestIsCanceledfinden Sie unter Abbrechen von E/A-Anforderungen

Beispiele

Im folgenden Codebeispiel wird WdfRequestComplete- aufgerufen, wenn WdfRequestIsCanceledTRUE-zurückgibt.

if (WdfRequestIsCanceled(request)) {
    WdfRequestComplete(
                       request,
                       STATUS_CANCELLED
                       );
}

Anforderungen

Anforderung Wert
Zielplattform- Universal
Minimale KMDF-Version 1.0
Mindest-UMDF-Version 2.0
Header- wdfrequest.h (include Wdf.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL- <=DISPATCH_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), ReqIsCancOnCancReq(kmdf)

Siehe auch

EvtRequestCancel

WdfRequestComplete-

WdfRequestMarkCancelable

WdfRequestMarkCancelableEx-

WdfRequestUnmarkCancelable