Функция FilterAttach (fltuser.h)
Функция FilterAttach присоединяет новый экземпляр минифильтра к заданному тому.
Синтаксис
HRESULT FilterAttach(
[in] LPCWSTR lpFilterName,
[in] LPCWSTR lpVolumeName,
[in, optional] LPCWSTR lpInstanceName,
[in, optional] DWORD dwCreatedInstanceNameLength,
[out, optional] LPWSTR lpCreatedInstanceName
);
Параметры
[in] lpFilterName
Указатель на строку расширенных символов, завершающуюся null, которая содержит имя минифильтра, для которого создается экземпляр. Этот параметр является обязательным и не может иметь значение NULL.
[in] lpVolumeName
Указатель на строку расширенных символов со значением NULL, содержащую имя тома, к которому будет присоединен только что созданный экземпляр.
Входная строка lpVolumeName может быть любой из следующих. Обратная косая черта в конце (\) является необязательной.
- Буква диска, например "D:\"
- Путь к точке подключения тома, например "c:\mnt\edrive\"
- Уникальный идентификатор тома (также называемый именем GUID тома), например "\?? \Volume{7603f260-142a-11d4-ac67-806d6172696f}\"
- Имя устройства, не являющееся неотстоятельным (также называемое целевым именем или именем устройства NT), например "\Device\HarddiskVolume1\"
[in, optional] lpInstanceName
Указатель на строку расширенных символов со значением NULL, содержащую имя экземпляра для нового экземпляра. Этот параметр является необязательным и может иметь значение NULL. Если этот параметр имеет значение NULL, новый экземпляр получает имя экземпляра минифильтра по умолчанию, как описано в разделе Примечания для FltAttachVolume.
[in, optional] dwCreatedInstanceNameLength
Длина (в байтах) буфера, на который указывает lpCreatedInstanceName . Этот параметр является необязательным и может быть равен нулю.
[out, optional] lpCreatedInstanceName
Указатель на переменную, выделенную вызывающим объектом, которая получает имя экземпляра для нового экземпляра, если экземпляр успешно присоединен к тому. Этот параметр является необязательным и может иметь значение NULL. Если значение не равно NULL, буфер должен быть достаточно большим, чтобы вместить INSTANCE_NAME_MAX_CHARS символов, а также признак конца NULL.
Возвращаемое значение
FilterAttach возвращает S_OK в случае успешного выполнения. В противном случае возвращается значение ошибки, например одно из следующих значений.
Код возврата | Описание |
---|---|
|
Экземпляр уже существует на этой высоте на указанном томе. |
|
Экземпляр с этим именем уже существует на указанном томе. |
|
Если значение lpInstanceName не равно NULL, lpInstanceName не соответствует имени зарегистрированного экземпляра фильтра в реестре. |
Комментарии
FilterAttach — это эквивалент FltAttachVolume в Win32.
Имя экземпляра, указанное в lpInstanceName , должно быть уникальным в системе.
Чтобы подключить экземпляр минифильтра к тому на заданной высоте, вызовите FilterAttachAtAltitude.
Чтобы отсоединить экземпляр минифильтра от тома, вызовите FilterDetach.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | fltuser.h (включая Fltuser.h) |
Библиотека | FltLib.lib |
DLL | FltLib.dll |