Поделиться через


Функция 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

Тип возвращаемой структуры сведений об экземпляре. Этот параметр должен содержать одно из следующих значений.

Значение Значение
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

Указатель на переменную, выделенную вызывающим объектом, которая получает количество байтов, возвращаемых в буфере, на которое указывает lpBuffer , если вызов FilterInstanceFindNext завершается успешно. Этот параметр является обязательным и не может иметь значение NULL.

Возвращаемое значение

FilterInstanceFindNext возвращает S_OK в случае успешного выполнения. В противном случае возвращается значение ошибки HRESULT, например одно из следующих значений:

Код возврата Описание
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
Буфер, на который указывает lpBuffer , недостаточно велик, чтобы содержать запрошенные сведения. При возвращении этого значения lpBytesReturned будет содержать размер буфера, необходимого для данной структуры dwInformationClass , в байтах.
HRESULT_FROM_WIN32(ERROR_INVALID_PARAMETER)
Для параметра dwInformationClass указано недопустимое значение. Например, если instanceAggregateStandardInformation указан для операционной системы, предшествующей Windows Vista, FilterInstanceFindNext возвращает это значение HRESULT.
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS)
Это значение HRESULT возвращается, если уникальных экземпляров минифильтра больше нет.

Комментарии

После установки дескриптора поиска путем вызова FilterInstanceFindFirst вызовите FilterInstanceFindNext для поиска других экземпляров минифильтра, указанного в вызове FilterInstanceFindFirst.

FilterInstanceFindNext находит один экземпляр для каждого вызова.

Требования

   
Целевая платформа Универсальное
Верхняя часть fltuser.h (включая FltUser.h)
Библиотека FltLib.lib
DLL FltLib.dll

См. также раздел

FilterInstanceFindClose

FilterInstanceFindFirst

INSTANCE_AGGREGATE_STANDARD_INFORMATION

INSTANCE_BASIC_INFORMATION

INSTANCE_FULL_INFORMATION

INSTANCE_PARTIAL_INFORMATION