FltQueryVolumeInformation 함수(fltkernel.h)
FltQueryVolumeInformation 루틴은 지정된 instance 연결된 볼륨에 대한 정보를 검색합니다.
구문
NTSTATUS FLTAPI FltQueryVolumeInformation(
[in] PFLT_INSTANCE Instance,
[out] PIO_STATUS_BLOCK Iosb,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass
);
매개 변수
[in] Instance
볼륨에 연결된 미니필터 드라이버 instance 대한 불투명 instance 포인터입니다.
[out] Iosb
쿼리 작업에 대한 최종 완료 상태 및 정보를 수신하는 호출자가 할당한 IO_STATUS_BLOCK 구조체에 대한 포인터입니다. 데이터를 반환하는 성공적인 호출의 경우 FsInformation 버퍼에 기록된 바이트 수가 구조체의 정보 멤버에 반환됩니다.
[out] FsInformation
볼륨에 대한 원하는 정보를 수신하는 호출자가 할당한 버퍼에 대한 포인터입니다. 버퍼에 반환된 정보의 구조는 FsInformationClass 매개 변수에 의해 정의됩니다.
[in] Length
FsInformation이 가리키는 버퍼의 크기(바이트)입니다. 호출자는 지정된 FsInformationClass에 따라 이 매개 변수를 설정해야 합니다. 예를 들어 FsInformationClass 값이 FileFsControlInformation인 경우 Length 는 sizeof(FILE_FS_CONTROL_INFORMATION) 이상이어야 합니다.
[in] FsInformationClass
요청된 정보의 유형입니다. 다음 값 중 하나입니다.
값 | 의미 |
---|---|
|
볼륨을 담당하는 파일 시스템에 대한 특성 정보를 포함하는 FILE_FS_ATTRIBUTE_INFORMATION 구조를 반환합니다. |
|
볼륨에 대한 파일 시스템 제어 정보를 포함하는 FILE_FS_CONTROL_INFORMATION 구조를 반환합니다. |
|
볼륨에 대한 디바이스 정보를 포함하는 FILE_FS_DEVICE_INFORMATION 구조를 반환합니다. |
|
지정된 드라이버가 볼륨 의 I/O 경로에 있는지 여부에 대한 정보가 포함된 FILE_FS_DRIVER_PATH_INFORMATION 구조를 반환합니다. 호출자는 FltQueryVolumeInformation을 호출하기 전에 드라이버의 이름을 FILE_FS_DRIVER_PATH_INFORMATION 구조체에 저장해야 합니다. |
|
볼륨에서 사용할 수 있는 총 공간 양에 대한 정보를 포함하는 FILE_FS_FULL_SIZE_INFORMATION 구조를 반환합니다. |
|
볼륨에 대한 파일 시스템별 개체 ID 정보를 포함하는 FILE_FS_OBJECTID_INFORMATION 구조를 반환합니다. 이는 운영 체제에서 할당한 (GUID 기반) 고유 볼륨 이름과 동일하지 않습니다. 참고 이 값은 스냅샷 볼륨에는 유효하지 않습니다.
|
|
호출 스레드와 연결된 사용자가 사용할 수 있는 볼륨의 공간 양에 대한 정보가 포함된 FILE_FS_SIZE_INFORMATION 구조를 반환합니다. |
|
볼륨 레이블, 일련 번호 및 생성 시간과 같은 볼륨에 대한 정보가 포함된 FILE_FS_VOLUME_INFORMATION 반환합니다. |
|
볼륨의 물리적 및 논리적 섹터 크기에 대한 정보를 포함하는 FILE_FS_SECTOR_SIZE_INFORMATION 구조를 반환합니다. |
반환 값
FltQueryVolumeInformation 루틴은 STATUS_SUCCESS 또는 다음 중 하나와 같은 적절한 NTSTATUS 값을 반환합니다.
반환 코드 | 설명 |
---|---|
|
FltQueryVolumeInformation 에서 풀 할당 오류가 발생했습니다. 오류 코드입니다. |
|
FsInformationClass에 잘못된 값이 지정되었습니다. 오류 코드입니다. |
|
인스턴스가 네트워크 볼륨에 연결됩니다. FltQueryVolumeInformation 은 네트워크 볼륨 정보를 쿼리하는 데 사용할 수 없습니다. 오류 코드입니다. |
설명
기본 파일 시스템에서 지원하지 않는 FILE_XXX_INFORMATION 구조체의 필드는 0으로 설정됩니다.
볼륨에 대한 정보를 변경하려면 FltSetVolumeInformation을 호출합니다.
지정된 볼륨에 대한 볼륨 속성 정보를 얻으려면 FltGetVolumeProperties를 호출합니다.
지정된 볼륨의 볼륨 이름을 얻으려면 FltGetVolumeName을 호출합니다.
지정된 볼륨의 볼륨 GUID 이름을 얻으려면 FltGetVolumeGuidName을 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Sp4용 Microsoft Windows 2000 업데이트 롤업 1, WINDOWS XP SP2(서비스 팩 2), Windows Server 2003 SP1 이상 Windows 운영 체제에서 사용 가능하고 지원됩니다. Windows 2000 SP4 및 이전 Windows 운영 체제에서는 사용할 수 없거나 지원되지 않습니다. |
대상 플랫폼 | 유니버설 |
헤더 | fltkernel.h(FltKernel.h 포함) |
라이브러리 | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |
추가 정보
FILE_FS_DRIVER_PATH_INFORMATION
FILE_FS_SECTOR_SIZE_INFORMATION