Función IoCancelIrp (wdm.h)

La rutina IoCancelIrp establece el bit de cancelación en un IRP determinado y llama a la rutina de cancelación del IRP si hay uno.

Sintaxis

BOOLEAN IoCancelIrp(
  [in] PIRP Irp
);

Parámetros

[in] Irp

Puntero al IRP que se va a cancelar.

Valor devuelto

IoCancelIrp devuelve TRUE si el IRP tenía una rutina de cancelación y se llamó a esta rutina. De lo contrario, devuelve FALSE. En cualquier caso, el bit de cancelación del IRP se establece en TRUE. Para obtener más información, vea la sección Comentarios.

Comentarios

Si el IRP tiene una rutina de cancelación, IoCancelIrp establece el bit de cancelación y llama a la rutina de cancelación.

Si Irp-CancelRoutine> es NULL y, por lo tanto, el IRP no se puede cancelar, IoCancelIrp establece el bit de cancelación del IRP y devuelve FALSE. El IRP debe cancelarse más adelante cuando se pueda cancelar.

Si un controlador que no posee el IRP llama a IoCancelIrp, los resultados son impredecibles. El IRP puede completarse con un estado correcto aunque se haya establecido su bit de cancelación.

Un controlador intermedio no debe llamar arbitrariamente a IoCancelIrp a menos que ese controlador haya creado el IRP pasado en la llamada. De lo contrario, el controlador intermedio podría cancelar un IRP que algún controlador de nivel superior realiza un seguimiento para fines propios.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport)

Consulte también

IoSetCancelRoutine