Функция FltRemoveExtraCreateParameter (fltkernel.h)

Подпрограмма FltRemoveExtraCreateParameter выполняет поиск структуры контекста ECP в списке ECP и, если она найдена, отсоединяет его от списка ECP.

Синтаксис

NTSTATUS FLTAPI FltRemoveExtraCreateParameter(
  [in]            PFLT_FILTER Filter,
  [in, out]       PECP_LIST   EcpList,
  [in]            LPCGUID     EcpType,
  [out]           PVOID       *EcpContext,
  [out, optional] ULONG       *EcpContextSize
);

Параметры

[in] Filter

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

[in, out] EcpList

Указатель на дополнительный список параметров создания (ECP), содержащий структуру контекста ECP, которая должна быть отсоединяется от заданного списка.

[in] EcpType

Указатель на определяемый пользователем GUID, который однозначно идентифицирует структуру контекста ECP, отсоединяемую от списка.

[out] EcpContext

Указатель на отсоединяемую структуру контекста ECP. Если структура контекста ECP успешно отсоединяется от заданного списка, этот параметр будет указан для указания на отсоединяемую структуру контекста ECP. Если структура контекста ECP не найдена в заданном списке ECP, этому параметру присваивается значение NULL.

[out, optional] EcpContextSize

Необязательный параметр, получающий размер отсоединяемой структуры контекста ECP. Если этот параметр присутствует при вызове подпрограммы, параметр получит размер в байтах отсоединяемой структуры контекста ECP. Если указанная структура контекста ECP не найдена в заданном списке ECP, этот параметр не определен.

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

FltRemoveExtraCreateParameter возвращает одно из следующих значений NTSTATUS:

Код возврата Описание
STATUS_SUCCESS
Указанная структура контекста ECP была успешно отсоединяется от заданного списка ECP.
STATUS_NOT_FOUND
Указанная структура контекста ECP не найдена в заданном списке ECP.

Комментарии

Подпрограмма FltRemoveExtraCreateParameter выполняет поиск в списке ECP, заданном параметром EcpList , на наличие структуры контекста ECP, заданной параметром EcpType . Если в списке существует структура контекста ECP, она отсоединяется от списка, параметр EcpContext указывает на него, а подпрограмма возвращает STATUS_SUCCESS. Если структура контекста ECP не существует в списке, параметру EcpContext присваивается значение NULL , а подпрограмма возвращает STATUS_NOT_FOUND.

Примечание Эта подпрограмма не освобождает пул памяти для структуры контекста ECP. Чтобы освободить структуру контекста ECP, сначала вызовите эту подпрограмму, чтобы отсоединить ее от списка, а затем вызовите подпрограмму FltFreeExtraCreateParameter , чтобы освободить саму структуру контекста ECP.
 

Требования

Требование Значение
Минимальная версия клиента Эта подпрограмма доступна, начиная с Windows Vista.
Целевая платформа Универсальное
Верхняя часть fltkernel.h (включая Fltkernel.h)
Библиотека FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

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

ECP_LIST

FltAllocateExtraCreateParameterFromLookasideList

FltCreateFileEx2

FltFreeExtraCreateParameter

FltGetEcpListFromCallbackData

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx