FltQueryVolumeInformation 函数 (fltkernel.h)

FltQueryVolumeInformation 例程检索有关给定实例附加到的卷的信息。

语法

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

附加到卷的微型筛选器驱动程序实例的不透明实例指针。

[out] Iosb

指向调用方分配IO_STATUS_BLOCK结构的指针,该结构接收最终完成状态和有关查询作的信息。 对于返回数据的成功调用,写入 FsInformation 缓冲区的字节数在结构的 信息 成员中返回。

[out] FsInformation

指向调用方分配的缓冲区的指针,该缓冲区接收有关卷的所需信息。 缓冲区中返回的信息的结构由 FsInformationClass 参数定义。

[in] Length

FsInformation 指向的缓冲区的大小(以字节为单位)。 调用方应根据给定 FsInformationClass设置此参数。 例如,如果 FsInformationClass 的值为 FileFsControlInformation,Length 必须至少 大小(FILE_FS_CONTROL_INFORMATION)。

[in] FsInformationClass

请求的信息类型。 以下值之一。

价值 意义
FileFsAttributeInformation
返回一个 FILE_FS_ATTRIBUTE_INFORMATION 结构,其中包含有关负责卷的文件系统的属性信息。
FileFsControlInformation
返回包含有关卷的文件系统控制信息的 FILE_FS_CONTROL_INFORMATION 结构。
FileFsDeviceInformation
返回包含卷的设备信息的 FILE_FS_DEVICE_INFORMATION 结构。
FileFsDriverPathInformation
返回一个 FILE_FS_DRIVER_PATH_INFORMATION 结构,其中包含有关指定驱动程序是否位于卷的 I/O 路径中的信息。 调用方必须先将驱动程序的名称存储在 FILE_FS_DRIVER_PATH_INFORMATION 结构中,然后才能调用 FltQueryVolumeInformation
FileFsFullSizeInformation
返回一个 FILE_FS_FULL_SIZE_INFORMATION 结构,其中包含有关卷上可用空间总量的信息。
FileFsObjectIdInformation
返回一个 FILE_FS_OBJECTID_INFORMATION 结构,其中包含卷的特定于文件系统的对象 ID 信息。 请注意,这与作系统分配的基于 GUID 的唯一卷名称不同。
注意 此值对快照卷无效。
 
FileFsSizeInformation
返回一个 FILE_FS_SIZE_INFORMATION 结构,其中包含有关与调用线程关联的用户可用的卷空间量的信息。
FileFsVolumeInformation
返回一个 FILE_FS_VOLUME_INFORMATION,其中包含有关卷的信息,例如卷标签、序列号和创建时间。
FileFsSectorSizeInformation
返回一个 FILE_FS_SECTOR_SIZE_INFORMATION 结构,其中包含有关卷的物理扇区大小和逻辑扇区大小的信息。

返回值

FltQueryVolumeInformation 例程返回 STATUS_SUCCESS 或适当的 NTSTATUS 值,例如以下值之一:

返回代码 描述
STATUS_INSUFFICIENT_RESOURCES

FltQueryVolumeInformation 遇到池分配失败。 这是一个错误代码。

STATUS_INVALID_INFO_CLASS
FsInformationClass指定了无效值。 这是一个错误代码。
STATUS_INVALID_PARAMETER
实例 附加到网络卷。 FltQueryVolumeInformation 不能用于查询网络卷信息。 这是一个错误代码。

言论

基础文件系统不支持的 FILE_XXX_INFORMATION 结构中的字段设置为零。

若要更改有关卷的信息,请调用 FltSetVolumeInformation

若要获取给定卷的卷属性信息,请调用 FltGetVolumeProperties

若要获取给定卷的卷名称,请调用 FltGetVolumeName

若要获取给定卷的卷 GUID 名称,请调用 FltGetVolumeGuidName

要求

要求 价值
最低支持的客户端 适用于 SP4 的 Windows 2000 更新汇总 1、Service Pack 2(SP2)、Windows Server 2003 SP1 及更高版本的 Windows作系统Microsoft可用和支持。 在 Windows 2000 SP4 和更早版本的 Windows作系统中不可用或不受支持。
目标平台 普遍
标头 fltkernel.h (包括 FltKernel.h)
FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

另请参阅

FILE_FS_ATTRIBUTE_INFORMATION

FILE_FS_CONTROL_INFORMATION

FILE_FS_DEVICE_INFORMATION

FILE_FS_DRIVER_PATH_INFORMATION

FILE_FS_FULL_SIZE_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FILE_FS_SECTOR_SIZE_INFORMATION

FILE_FS_SIZE_INFORMATION

FILE_FS_VOLUME_INFORMATION

FltGetVolumeGuidName

FltGetVolumeName

FltGetVolumeProperties

FltSetVolumeInformation