Compartir a través de


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 una.

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 Comentarios.

Observaciones

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 tanto, irP no se puede cancelar, IoCancelIrp establece el bit de cancelación de IRP y devuelve FALSE. El IRP debe cancelarse más adelante cuando se cancele.

Si un controlador que no posee las llamadas IRP 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 está realizando un seguimiento con fines propios.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 2000.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport)

Consulte también

ioSetCancelRoutine