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) |