Функция FltQueryVolumeInformationFile (fltkernel.h)
FltQueryVolumeInformationFile извлекает сведения о томе для заданного файла, каталога, устройства хранения или тома.
Синтаксис
NTSTATUS FLTAPI FltQueryVolumeInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass,
[out, optional] PULONG LengthReturned
);
Параметры
[in] Instance
Указатель непрозрачного экземпляра для вызывающего объекта. Этот параметр является обязательным и не может иметь значение NULL.
[in] FileObject
Указатель на объект файла для открытого файла, каталога, устройства хранения или тома. Этот параметр является обязательным и не может иметь значение NULL.
[out] FsInformation
Указатель на буфер, выделенный вызывающим объектом, который получает сведения о файле. Параметр FsInformationClass указывает тип сведений. Этот параметр является обязательным и не может иметь значение NULL.
[in] Length
Размер буфера FsInformation в байтах .
[in] FsInformationClass
Тип возвращаемых сведений о томе. Это может быть:
Значение | Значение |
---|---|
|
Возвращает структуру FILE_FS_ATTRIBUTE_INFORMATION , содержащую сведения об атрибутах файловой системы, ответственной за том. |
|
Возвращает структуру FILE_FS_CONTROL_INFORMATION , содержащую сведения об управлении файловой системой тома. |
|
Возвращает структуру FILE_FS_DEVICE_INFORMATION , содержащую сведения об устройстве для тома. |
|
Возвращает структуру FILE_FS_DRIVER_PATH_INFORMATION , содержащую сведения о том, находится ли указанный драйвер в пути ввода-вывода для тома. Вызывающий объект должен сохранить имя драйвера в структуре FILE_FS_DRIVER_PATH_INFORMATION перед вызовом FltQueryVolumeInformationFile. |
|
Возвращает структуру FILE_FS_FULL_SIZE_INFORMATION , содержащую сведения об общем объеме свободного места на томе. |
|
Возвращает структуру FILE_FS_OBJECTID_INFORMATION , содержащую сведения об идентификаторе объекта для конкретной файловой системы для тома. Обратите внимание, что это не то же самое, что уникальное имя тома (на основе GUID), назначенное операционной системой. |
|
Возвращает структуру FILE_FS_SIZE_INFORMATION , содержащую сведения о томе, доступном пользователю, связанному с вызывающим потоком. |
|
Возвращает FILE_FS_VOLUME_INFORMATION , содержащую сведения о томе, например метку тома, серийный номер и время создания. |
|
Возвращает FILE_FS_SECTOR_SIZE_INFORMATION структуру, содержащую сведения о физических и логических размерах сектора тома. |
[out, optional] LengthReturned
Указатель на переменную, выделенную вызывающим объектом, которая получает размер (в байтах) сведений, возвращаемых в буфер FsInformation . Этот параметр является необязательным и может иметь значение NULL.
Возвращаемое значение
FltQueryVolumeInformationFile возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS , например следующее:
Код возврата | Описание |
---|---|
|
В настоящее время том не подключен. Это код ошибки. |
Комментарии
FltQueryVolumeInformationFile извлекает сведения о томе для заданного файла, каталога, устройства хранения или тома.
Если FileObject представляет открытое устройство напрямую, в качестве значения FsInformationClass можно указать только FileFsDeviceInformation.
FltQueryVolumeInformationFile возвращает ноль в любом элементе структуры FILE_FS_XXX_INFORMATION, которая не поддерживается определенной файловой системой.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | fltkernel.h (включая Fltkernel.h) |
Библиотека | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |
См. также раздел
FILE_FS_DRIVER_PATH_INFORMATION
FILE_FS_SECTOR_SIZE_INFORMATION