FilterInstanceFindNext 函数 (fltuser.h)
FilterInstanceFindNext 函数继续通过调用 FilterInstanceFindFirst 启动的微筛选器驱动程序实例搜索。
语法
HRESULT FilterInstanceFindNext(
[in] HANDLE hFilterInstanceFind,
[in] INSTANCE_INFORMATION_CLASS dwInformationClass,
[out] LPVOID lpBuffer,
[in] DWORD dwBufferSize,
[out] LPDWORD lpBytesReturned
);
参数
[in] hFilterInstanceFind
上一次调用 FilterInstanceFindFirst 返回的微筛选器实例搜索句柄。
[in] dwInformationClass
返回的实例信息结构的类型。 此参数必须包含以下值之一。
Value | 含义 |
---|---|
InstanceBasicInformation | 返回实例 的INSTANCE_BASIC_INFORMATION 结构。 |
InstanceFullInformation | 返回实例 的INSTANCE_FULL_INFORMATION 结构。 |
InstancePartialInformation | 返回实例 的INSTANCE_PARTIAL_INFORMATION 结构。 |
InstanceAggregateStandardInformation | 返回实例 的INSTANCE_AGGREGATE_STANDARD_INFORMATION 结构。 未利用结构的 LegacyFilter 部分。 此结构从 Windows Vista 开始可用。 |
[out] lpBuffer
指向调用方分配的缓冲区的指针,该缓冲区接收请求的信息。 缓冲区中返回的信息的类型由 dwInformationClass 参数定义。
[in] dwBufferSize
lpBuffer 参数指向的缓冲区的大小(以字节为单位)。 调用方应根据给定的 dwInformationClass 设置此参数。
[out] lpBytesReturned
指向调用方分配的变量的指针,如果对 FilterInstanceFindNext 的调用成功,该变量接收 lpBuffer 指向的缓冲区中返回的字节数。 此参数是必需的,不能为 NULL。
返回值
如果成功,FilterInstanceFindNext 将返回S_OK。 否则,它将返回 HRESULT 错误值,如以下值之一:
返回代码 | 说明 |
---|---|
|
lpBuffer 指向的缓冲区不够大,无法包含请求的信息。 返回此值时, lpBytesReturned 将包含给定 dwInformationClass 结构所需的缓冲区大小(以字节为单位)。 |
|
为 dwInformationClass 参数指定了无效值。 例如,如果为 Windows Vista 之前的操作系统指定 了 InstanceAggregateStandardInformation , 则 FilterInstanceFindNext 将返回此 HRESULT 值。 |
|
如果没有其他唯一的微筛选器实例,则返回此 HRESULT 值。 |
备注
通过调用 FilterInstanceFindFirst 建立搜索句柄后,调用 FilterInstanceFindNext 以搜索在 FilterInstanceFindFirst 调用中指定的微筛选器的其他实例。
FilterInstanceFindNext 为每个调用查找一个实例。
要求
目标平台 | 通用 |
标头 | fltuser.h (包括 FltUser.h) |
Library | FltLib.lib |
DLL | FltLib.dll |