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


Функция FilterVolumeFindFirst (fltuser.h)

Функция FilterVolumeFindFirst возвращает сведения о томе.

Синтаксис

HRESULT FilterVolumeFindFirst(
  [in]  FILTER_VOLUME_INFORMATION_CLASS dwInformationClass,
  [out] LPVOID                          lpBuffer,
  [in]  DWORD                           dwBufferSize,
  [out] LPDWORD                         lpBytesReturned,
  [out] PHANDLE                         lpVolumeFind
);

Параметры

[in] dwInformationClass

Тип запрашиваемых сведений. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
FilterVolumeBasicInformation Буфер, на который указывает параметр lpBuffer , получает FILTER_VOLUME_BASIC_INFORMATION структуру для тома.
FilterVolumeStandardInformation Буфер, на который указывает параметр lpBuffer , получает FILTER_VOLUME_STANDARD_INFORMATION структуру для тома. Эта структура доступна начиная с Windows Vista.

[out] lpBuffer

Указатель на буфер, выделенный вызывающим объектом, который получает запрошенные сведения. Тип информации, возвращаемой в буфере, определяется параметром dwInformationClass .

[in] dwBufferSize

Размер (в байтах) буфера, на который указывает параметр lpBuffer . Вызывающий объект должен задать этот параметр в соответствии с заданным dwInformationClass.

[out] lpBytesReturned

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

[out] lpVolumeFind

Указатель на переменную, выделенную вызывающим объектом, которая получает дескриптор поиска для минифильтра в случае успешного вызова FilterVolumeFindFirst ; В противном случае он получает INVALID_HANDLE_VALUE. Этот дескриптор поиска можно использовать в последующих вызовах FilterVolumeFindNext и FilterVolumeFindClose.

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

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

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

Комментарии

Эта функция FilterVolumeFindFirst используется для начала сканирования томов, известных диспетчеру фильтров.

FilterVolumeFindFirst открывает дескриптор поиска и возвращает сведения о первом томе, найденном в списке томов, известных диспетчеру фильтров. После установки дескриптора поиска используйте функцию FilterVolumeFindNext для поиска других томов в списке диспетчера фильтров. Если дескриптор поиска больше не требуется, закройте его, вызвав FilterVolumeFindClose.

Обратите внимание, что при использовании FilterVolumeFindFirst и FilterVolumeFindNext для перечисления списка томов, известных диспетчеру фильтров, два или более тома в списке могут иметь одинаковое имя. Дополнительные сведения см. в разделе Основные сведения о перечислениях томов с повторяющимися именами томов.

Требования

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

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

FILTER_VOLUME_BASIC_INFORMATION

FILTER_VOLUME_STANDARD_INFORMATION

FilterVolumeFindClose

FilterVolumeFindNext