Compartilhar via


Função IoCancelIrp (wdm.h)

A rotina IoCancelIrp define o bit de cancelamento em um determinado IRP e chama a rotina de cancelamento para o IRP se houver um.

Sintaxe

BOOLEAN IoCancelIrp(
  [in] PIRP Irp
);

Parâmetros

[in] Irp

Um ponteiro para o IRP a ser cancelado.

Valor de retorno

IoCancelIrp retornará VERDADEIRO se o IRP tiver uma rotina de cancelamento e essa rotina for chamada. Caso contrário, ele retornará FALSE. Em ambos os casos, o bit de cancelamento do IRP é definido como VERDADEIRO. Para obter mais informações, consulte Comentários.

Observações

Se o IRP tiver uma rotina de cancelamento, IoCancelIrp definirá o bit de cancelamento e chamará a rotina de cancelamento.

Se irp –> CancelRoutine é NULL e, portanto, o IRP não é cancelável, IoCancelIrp define o bit de cancelamento do IRP e retorna false. O IRP deve ser cancelado posteriormente quando se tornar cancelável.

Se um driver que não possui as chamadas IRP IoCancelIrp, os resultados serão imprevisíveis. O IRP pode ser concluído com um status bem-sucedido, mesmo que seu bit de cancelamento tenha sido definido.

Um driver intermediário não deve chamar arbitrariamente IoCancelIrp, a menos que o driver tenha criado o IRP passado na chamada. Caso contrário, o driver intermediário pode cancelar um IRP que algum driver de nível superior está acompanhando para fins próprios.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 2000.
da Plataforma de Destino Universal
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport)

Consulte também

IoSetCancelRoutine