다음을 통해 공유


IoIsValidIrpStatus 함수(ntddk.h)

IoIsValidIrpStatus 루틴은 지정된 NTSTATUS 상태 코드 값의 유효성을 검사합니다.

통사론

LOGICAL IoIsValidIrpStatus(
  [in] IN NTSTATUS Status
);

매개 변수

[in] Status

유효성을 검사할 상태 코드입니다.

반환 값

IoIsValidIrpStatusStatus 매개 변수가 올바른 형식의 NTSTATUS 값인 경우 TRUE 반환합니다. 그렇지 않으면 루틴은 FALSE 반환합니다.

발언

드라이버 개발자는 IRP_MJ_INTERNAL_DEVICE_CONTROL 요청에 대한 상태 코드로 사용할 사용자 지정 NTSTATUS 값을 정의할 수 있습니다. 드라이버는 IoIsValidIrpStatus 호출하여 이러한 요청에 대한 상태 코드의 유효성을 검사할 수 있습니다. 이 루틴은 IRP의 I/O 상태 블록 초기화되지 않거나 손상된 상태 값을 검색하는 데 유용합니다.

IoIsValidIrpStatus 사용자 지정 NTSTATUS 값 정의 규칙을 위반하는 잘못된 상태 코드를 검색하지만 규칙을 따르는 것으로 보이는 잘못된 상태 코드를 검색하지 못할 수 있습니다. 루틴은 유효한 NTSTATUS 코드 값이 아니지만 유효한 NTSTATUS 코드에 대해 FALSE 반환하는 Status 매개 변수에 대해 TRUE 반환할 수 있습니다.

IoIsValidIrpStatusStatus 매개 변수 값의 Sev, FacilityCode 필드를 검사하여 이러한 필드의 값 조합이 게시된 지침을 준수하는지 여부를 확인합니다. Status 매개 변수의 C 비트가 설정된 경우 IoIsValidIrpStatusStatus다른 필드 값에 관계없이 TRUE 반환합니다.

이러한 필드에 대한 자세한 내용은 새 NTSTATUS 값 정의참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows 8부터 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 ntddk.h(Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 모든 수준입니다.

참고 항목

IRP_MJ_INTERNAL_DEVICE_CONTROL