다음을 통해 공유


IoCancelIrp 함수(wdm.h)

IoCancelIrp 루틴은 지정된 IRP에서 취소 비트를 설정하고 있는 경우 IRP에 대한 취소 루틴을 호출합니다.

통사론

BOOLEAN IoCancelIrp(
  [in] PIRP Irp
);

매개 변수

[in] Irp

취소할 IRP에 대한 포인터입니다.

반환 값

IoCancelIrp IRP에 취소 루틴이 있고 이 루틴이 호출된 경우 TRUE 반환합니다. 그렇지 않으면 false 반환됩니다. 두 경우 모두 IRP의 취소 비트는 TRUE 설정됩니다. 자세한 내용은 비고를 참조하세요.

발언

IRP에 취소 루틴이 있는 경우 IoCancelIrp 취소 비트를 설정하고 취소 루틴을 호출합니다.

Irp경우 ->CancelRoutine NULL IRP를 취소할 수 없으므로 IoCancelIrp IRP의 취소 비트를 설정하고 FALSE반환합니다. IRP는 나중에 취소할 수 있게 되면 취소해야 합니다.

IRP를 소유하지 않은 드라이버가 IoCancelIrp 호출하는 경우 결과를 예측할 수 없습니다. 취소 비트가 설정된 경우에도 IRP가 성공적인 상태로 완료될 수 있습니다.

중간 드라이버는 해당 드라이버가 호출에 전달된 IRP를 만들지 않는 한 IoCancelIrp 임의로 호출해서는 안 됩니다. 그렇지 않으면 중간 드라이버는 일부 상위 수준 드라이버가 자체적으로 추적하는 IRP를 취소할 수 있습니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 2000부터 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs(storport)

참고 항목

IoSetCancelRoutine