NtQueryVolumeInformationFile 함수(ntifs.h)
NtQueryVolumeInformationFile 루틴은 지정된 파일, 디렉터리, 스토리지 디바이스 또는 볼륨과 연결된 볼륨에 대한 정보를 검색합니다.
통사론
__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryVolumeInformationFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass
);
매개 변수
[in] FileHandle
볼륨 정보가 요청되는 열린 파일, 디렉터리, 스토리지 디바이스 또는 볼륨에 대해 NtCreateFile 또는 NtOpenFile 반환된 파일 개체에 대한 핸들입니다.
[out] IoStatusBlock
쿼리 작업에 대한 최종 완료 상태 및 정보를 수신하는 IO_STATUS_BLOCK 구조체에 대한 포인터입니다. 데이터를 반환하는 호출이 성공적이면 FsInformation 버퍼에 기록된 바이트 수가 구조체의 Information 멤버에 반환됩니다.
[out] FsInformation
볼륨에 대한 원하는 정보를 수신하는 호출자 할당 버퍼에 대한 포인터입니다. 버퍼에서 반환되는 정보의 구조는 FsInformationClass 매개 변수에 의해 정의됩니다.
[in] Length
FsInformation
[in] FsInformationClass
볼륨에 대해 반환할 정보의 유형입니다. 이 멤버를 다음 FS_INFORMATION_CLASS 열거형 값 중 하나로 설정합니다.
값 | 의미 |
---|---|
FileFsAttributeInformation |
볼륨을 담당하는 파일 시스템에 대한 특성 정보가 포함된 FILE_FS_ATTRIBUTE_INFORMATION 구조를 반환합니다. |
FileFsControlInformation |
볼륨에 대한 파일 시스템 제어 정보를 포함하는 FILE_FS_CONTROL_INFORMATION 구조를 반환합니다. |
FileFsDeviceInformation |
볼륨에 대한 디바이스 정보를 포함하는 FILE_FS_DEVICE_INFORMATION 구조를 반환합니다. |
FileFsDriverPathInformation |
지정된 드라이버가 볼륨의 I/O 경로에 있는지 여부에 대한 정보를 포함하는 FILE_FS_DRIVER_PATH_INFORMATION 구조를 반환합니다. 호출자는 NtQueryVolumeInformationFile호출하기 전에 드라이버의 이름을 FILE_FS_DRIVER_PATH_INFORMATION 구조에 저장해야 합니다. |
FileFsFullSizeInformation |
볼륨에서 사용 가능한 총 공간 양에 대한 정보를 포함하는 FILE_FS_FULL_SIZE_INFORMATION 구조를 반환합니다. |
FileFsObjectIdInformation |
볼륨에 대한 파일 시스템별 개체 ID 정보를 포함하는 FILE_FS_OBJECTID_INFORMATION 구조를 반환합니다. 이는 운영 체제에서 할당한 (GUID 기반) 고유 볼륨 이름과 동일하지 않습니다. |
FileFsSizeInformation |
호출 스레드와 연결된 사용자가 사용할 수 있는 볼륨의 공간 양에 대한 정보가 포함된 FILE_FS_SIZE_INFORMATION 구조를 반환합니다. |
FileFsVolumeInformation |
볼륨 레이블, 일련 번호 및 생성 시간과 같은 볼륨에 대한 정보가 포함된 FILE_FS_VOLUME_INFORMATION 반환합니다. |
FileFsSectorSizeInformation |
볼륨의 물리적 및 논리적 섹터 크기에 대한 정보를 포함하는 FILE_FS_SECTOR_SIZE_INFORMATION 구조를 반환합니다. |
반환 값
NtQueryVolumeInformationFile STATUS_SUCCESS 또는 적절한 오류 상태를 반환합니다.
발언
NtQueryVolumeInformationFile 지정된 파일, 디렉터리, 스토리지 디바이스 또는 볼륨과 연결된 볼륨에 대한 정보를 검색합니다.
FileHandle 직접 디바이스 열기를 나타내는 경우 FileFsDeviceInformationFsInformationClass값으로 지정할 수 있습니다.
NtQueryVolumeInformationFile 파일 시스템에서 지원되지 않는 FILE_XXX_INFORMATION 구조체의 멤버에서 0을 반환합니다.
다른 파일 정보 쿼리 루틴에 대한 자세한 내용은 파일 개체
미니 필터는 NtQueryVolumeInformationFile대신 FltQueryVolumeInformationFile 사용해야 합니다.
메모
NtQueryVolumeInformationFile 함수에 대한 호출이 사용자 모드에서 발생하는 경우 "ZwQueryVolumeInformationFile" 대신 "NtQueryVolumeInformationFile" 이름을 사용해야 합니다.
커널 모드 드라이버의 호출의 경우 NtXxx 및 ZwXxx 버전의 Windows Native System Services 루틴은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP |
대상 플랫폼 | 보편적 |
헤더 | ntifs.h(Ntifs.h, Ntddk.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL |
PASSIVE_LEVEL(설명 섹션 참조) |
DDI 규정 준수 규칙 |
HwStorPortProhibitedDDIs, PowerIrpDDis |
참고 항목
FILE_FS_DRIVER_PATH_INFORMATION
IRP_MJ_QUERY_VOLUME_INFORMATION
네이티브 시스템 서비스 루틴 Nt 및 Zw 버전 사용
ZwSetVolumeInformationFile