Freigeben über


IoCancelIrp-Funktion (wdm.h)

Die IoCancelIrp-Routine legt das Cancel-Bit in einem bestimmten IRP fest und ruft die Abbruchroutine für das IRP auf, falls vorhanden.

Syntax

BOOLEAN IoCancelIrp(
  [in] PIRP Irp
);

Parameter

[in] Irp

Ein Zeiger auf den abzubrechenden IRP.

Rückgabewert

IoCancelIrp gibt TRUE zurück, wenn die IRP über eine Abbruchroutine verfügte und diese Routine aufgerufen wurde. Andernfalls wird FALSE zurückgegeben. In beiden Fällen ist das Cancel Bit des IRP auf TRUE festgelegt. Weitere Informationen finden Sie in den Hinweisen.

Hinweise

Wenn das IRP über eine Abbruchroutine verfügt, legt IoCancelIrp das Cancel-Bit fest und ruft die Abbruchroutine auf.

Wenn Irp-CancelRoutine>NULL ist und die IRP daher nicht abgebrochen werden kann, legt IoCancelIrp das Cancel-Bit des IRP fest und gibt FALSE zurück. Das IRP sollte zu einem späteren Zeitpunkt abgebrochen werden, wenn er abgebrochen werden kann.

Wenn ein Treiber, der nicht im Besitz des IRP ist, IoCancelIrp aufruft, sind die Ergebnisse unvorhersehbar. Die IRP kann mit einer erfolgreichen status abgeschlossen werden, obwohl das Cancel-Bit festgelegt wurde.

Ein Zwischentreiber sollte IoCancelIrp nicht willkürlich aufrufen, es sei denn, dieser Treiber hat die IRP erstellt, die im Aufruf übergeben wurde. Andernfalls kann der Zwischentreiber eine IRP abbrechen, die von einem Treiber auf höherer Ebene für eigene Zwecke nachverfolgt wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs(storport)

Weitere Informationen

IoSetCancelRoutine