다음을 통해 공유


IoCancelIrp 함수(wdm.h)

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

구문

BOOLEAN IoCancelIrp(
  [in] PIRP Irp
);

매개 변수

[in] Irp

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

반환 값

IRP에 취소 루틴이 있고 이 루틴이 호출된 경우 IoCancelIrpTRUE를 반환합니다. 그렇지 않으면 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