다음을 통해 공유


FltQueryInformationFile 함수(fltkernel.h)

FltQueryInformationFile 지정된 파일에 대한 정보를 검색합니다.

통사론

NTSTATUS FLTAPI FltQueryInformationFile(
  [in]            PFLT_INSTANCE          Instance,
  [in]            PFILE_OBJECT           FileObject,
  [out]           PVOID                  FileInformation,
  [in]            ULONG                  Length,
  [in]            FILE_INFORMATION_CLASS FileInformationClass,
  [out, optional] PULONG                 LengthReturned
);

매개 변수

[in] Instance

호출자에 대한 불투명 인스턴스 포인터입니다. 이 매개 변수는 필수이며 NULL 수 없습니다.

[in] FileObject

파일에 대한 파일 개체 포인터입니다. 이 매개 변수는 필수이며 NULL 수 없습니다.

[out] FileInformation

파일에 대한 정보를 수신하는 호출자 할당 버퍼에 대한 포인터입니다. FileInformationClass 매개 변수는 정보 유형을 지정합니다. 이 매개 변수는 필수이며 NULL 수 없습니다.

[in] Length

FileInformation 버퍼의 크기(바이트)입니다.

[in] FileInformationClass

FileInformation 버퍼에 반환할 파일 정보의 형식을 지정하는 FILE_INFORMATION_CLASS 값입니다.

[out, optional] LengthReturned

FileInformation 버퍼에 반환된 정보의 크기(바이트)를 수신하는 호출자 할당 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL 수 있습니다.

반환 값

FltQueryInformationFile STATUS_SUCCESS 또는 다음과 같은 적절한 NTSTATUS 값을 반환합니다.

반환 코드 묘사
STATUS_VOLUME_DISMOUNTED
파일은 현재 탑재되지 않은 볼륨에 있습니다. 오류 코드입니다.

발언

미니 필터 드라이버는 FltQueryInformationFile 호출하여 FileObject식별된 파일에 대한 정보를 검색합니다. 파일은 현재 열려 있어야 합니다.

FltQueryInformationFile 특정 파일 시스템에서 지원되지 않는 FILE_XXX_INFORMATION 구조체의 멤버에서 0을 반환합니다.

FltQueryInformationFile 호출자는 IRQL = PASSIVE_LEVEL 실행되어야 하며 APC가 사용하도록 설정된.

참고: 시스템 교착 상태를 일으킬 수 있으므로 NULL이 아닌 최상위 IRP 값으로 이 루틴을 호출하지 마세요.

요구 사항

요구
대상 플랫폼 보편적
헤더 fltkernel.h(Fltkernel.h 포함)
라이브러리 FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL(설명 섹션 참조)

참고 항목

FILE_INFORMATION_CLASS

FltQueryVolumeInformationFile

fltSetInformationFile

ZwQueryInformationFile