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