FsRtlQueryInformationFile 函数 (ntifs.h)

FsRtlQueryInformationFile 生成显式文件查询信息 IRP(IRP_MJ_QUERY_INFORMATION),将其向下发送,同步等待它完成,并返回结果。 此函数允许调用方通过 FileObject 而不是句柄来完成此操作。

语法

NTSTATUS FsRtlQueryInformationFile(
  [in]  PFILE_OBJECT           FileObject,
  [out] PVOID                  FileInformation,
  [in]  ULONG                  Length,
  [in]  FILE_INFORMATION_CLASS FileInformationClass,
  [out] PULONG                 RetFileInformationSize
);

参数

[in] FileObject

指向要发送操作的 FILE_OBJECT 的指针。

[out] FileInformation

指向调用方分配的缓冲区的指针,用于接收查询的文件信息。

[in] Length

FileInformation 指向的缓冲区的大小(以字节为单位)。

[in] FileInformationClass

一个 FILE_INFORMATION_CLASS 值,该值指定要查询的文件信息的类型。

[out] RetFileInformationSize

将写入(返回)的字节数接收到 FileInformation 指向的缓冲区中。

返回值

FsRtlKernelFsControlFile 返回STATUS_SUCCESS或适当的 NTSTATUS 值,例如以下值之一。

价值 意义
STATUS_INSUFFICIENT_RESOURCES 发生池分配失败。
STATUS_INVALID_PARAMETER 提供了无效参数(例如,FileObject无效)。

言论

此例程假定所有传入的缓冲区都是内核模式缓冲区。

要求

要求 价值
标头 ntifs.h

另请参阅

ZwQueryInformationFile