Share via


Fonction FltRemoveExtraCreateParameter (fltkernel.h)

La routine FltRemoveExtraCreateParameter recherche une liste ECP pour une structure de contexte ECP et, si elle est trouvée, la détache de la liste ECP.

Syntaxe

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

Paramètres

[in] Filter

Pointeur de filtre opaque pour le pilote de minifiltre. Ce pointeur identifie de manière unique le pilote de minifiltre et reste constant tant que le pilote de minifiltre est chargé.

[in, out] EcpList

Pointeur vers la liste de paramètres de création supplémentaires (ECP) qui contient la structure de contexte ECP à détacher de la liste donnée.

[in] EcpType

Pointeur vers un GUID défini par l’utilisateur qui identifie de manière unique la structure de contexte ECP à détacher de la liste.

[out] EcpContext

Pointeur vers la structure de contexte ECP détachée. Si la structure de contexte ECP est correctement détachée de la liste donnée, ce paramètre est défini pour pointer vers la structure de contexte ECP détachée. Si la structure de contexte ECP est introuvable dans la liste ECP donnée, ce paramètre a la valeur NULL.

[out, optional] EcpContextSize

Paramètre facultatif qui reçoit la taille de la structure de contexte ECP détachée. Si ce paramètre est présent lorsque la routine est appelée, le paramètre reçoit la taille, en octets, de la structure de contexte ECP détachée. Si la structure de contexte ECP donnée n’a pas été trouvée dans la liste ECP donnée, ce paramètre n’est pas défini.

Valeur retournée

FltRemoveExtraCreateParameter retourne l’une des valeurs NTSTATUS suivantes :

Code de retour Description
STATUS_SUCCESS
La structure de contexte ECP donnée a été correctement détachée de la liste ECP donnée.
STATUS_NOT_FOUND
La structure de contexte ECP donnée n’a pas été trouvée dans la liste ECP donnée.

Remarques

La routine FltRemoveExtraCreateParameter recherche dans la liste ECP donnée par le paramètre EcpList une structure de contexte ECP donnée par le paramètre EcpType . Si la structure de contexte ECP existe dans la liste, elle est détachée de la liste, le paramètre EcpContext est défini pour pointer vers celle-ci et la routine retourne STATUS_SUCCESS. Si la structure de contexte ECP n’existe pas dans la liste, le paramètre EcpContext a la valeur NULL et la routine retourne STATUS_NOT_FOUND.

Note Cette routine ne libère pas le pool de mémoire pour la structure de contexte ECP. Pour libérer la structure de contexte ECP, appelez d’abord cette routine pour la détacher de la liste, puis appelez la routine FltFreeExtraCreateParameter pour libérer la structure de contexte ECP elle-même.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Cette routine est disponible à partir de Windows Vista.
Plateforme cible Universal
En-tête fltkernel.h (inclure Fltkernel.h)
Bibliothèque FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Voir aussi

ECP_LIST

FltAllocateExtraCreateParameterFromLookasideList

FltCreateFileEx2

FltFreeExtraCreateParameter

FltGetEcpListFromCallbackData

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx