fltGetFilterInformation 函数 (fltkernel.h)

FltGetFilterInformation 例程提供有关微型筛选器驱动程序的信息。

语法

NTSTATUS FLTAPI FltGetFilterInformation(
  [in]  PFLT_FILTER              Filter,
  [in]  FILTER_INFORMATION_CLASS InformationClass,
  [out] PVOID                    Buffer,
  [in]  ULONG                    BufferSize,
  [out] PULONG                   BytesReturned
);

参数

[in] Filter

调用方不透明筛选器指针。

[in] InformationClass

请求的信息类型。 此参数可以具有以下值之一。

含义
FilterFullInformation Buffer 参数指向的缓冲区接收微型筛选器驱动程序的FILTER_FULL_INFORMATION结构。
FilterAggregateBasicInformation Buffer 参数指向的缓冲区接收微型筛选器驱动程序的FILTER_AGGREGATE_BASIC_INFORMATION结构。 此 InformationClass 值从 Microsoft Windows Server 2003 SP1 和 Windows XP SP2 开始提供,其中包含筛选器管理器汇总。 有关适用于 Windows XP SP2 的筛选器管理器汇总包的详细信息,请参阅 Microsoft 知识库中的文章914882“ 适用于 Windows XP SP2 的筛选器管理器汇总包”。
FilterAggregateStandardInformation Buffer 参数指向的缓冲区接收微型筛选器驱动程序的FILTER_AGGREGATE_STANDARD_INFORMATION结构。 不使用结构的 LegacyFilter 部分。 此信息 值从 Windows Vista 开始可用。

[out] Buffer

指向接收请求信息的调用方分配的缓冲区的指针。 缓冲区中返回的信息的类型由 InformationClass 参数定义。

[in] BufferSize

Buffer 参数指向的缓冲区的大小(以字节为单位)。 调用方应根据给定 InformationClass 值设置此参数。

[out] BytesReturned

指向调用方分配的变量的指针,该变量接收 Buffer 指向的 缓冲区 中返回的字节数。 如果 BufferSize 的输入值太小, FltGetFilterInformation 将返回STATUS_BUFFER_TOO_SMALL并将此变量设置为存储所请求信息所需的字节数。 此参数是必需的,不能为 NULL

返回值

FltGetFilterInformation 返回STATUS_SUCCESS或相应的 NTSTATUS 值,例如以下值之一:

返回代码 说明
STATUS_BUFFER_TOO_SMALL
Buffer 参数指向的 缓冲区 不够大,无法存储请求的信息。 这是错误代码。
STATUS_INVALID_PARAMETER
InformationClass 参数指定了无效值。 例如,如果在 Windows Vista 之前的操作系统上指定 FilterAggregateStandardInformation ,则例程将返回STATUS_INVALID_PARAMETER。 这是错误代码。

要求

   
目标平台 通用
标头 fltkernel.h (包括 FltKernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

另请参阅

FILTER_AGGREGATE_BASIC_INFORMATION

FILTER_AGGREGATE_STANDARD_INFORMATION

FILTER_FULL_INFORMATION

FltEnumerateFilterInformation

FltEnumerateInstanceInformationByFilter

FltEnumerateInstanceInformationByVolume

FltGetInstanceInformation