Fonction FilterAttach (fltuser.h)
La fonction FilterAttach attache un nouveau minifiltre instance au volume donné.
Syntaxe
HRESULT FilterAttach(
[in] LPCWSTR lpFilterName,
[in] LPCWSTR lpVolumeName,
[in, optional] LPCWSTR lpInstanceName,
[in, optional] DWORD dwCreatedInstanceNameLength,
[out, optional] LPWSTR lpCreatedInstanceName
);
Paramètres
[in] lpFilterName
Pointeur vers une chaîne de caractères larges terminée par null contenant le nom du minifiltre pour lequel une instance doit être créée. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
[in] lpVolumeName
Pointeur vers une chaîne de caractères larges terminée par null contenant le nom du volume auquel le instance nouvellement créé doit être attaché.
La chaîne d’entrée lpVolumeName peut être l’une des suivantes. La barre oblique inverse de fin (\) est facultative.
- Lettre de lecteur, telle que « D :\ »
- Chemin d’accès à un point de montage de volume, tel que « c :\mnt\edrive »
- Identificateur de volume unique (également appelé nom GUID de volume), tel que « \ ? » \Volume{7603f260-142a-11d4-ac67-806d6172696f}\
- Nom d’appareil non persistant (également appelé nom de cible ou nom d’appareil NT), tel que « \Device\HarddiskVolume1 »
[in, optional] lpInstanceName
Pointeur vers une chaîne de caractères larges terminée par null contenant le nom instance de la nouvelle instance. Ce paramètre est facultatif et peut être NULL. Si ce paramètre a la valeur NULL, le nouveau instance reçoit le nom de instance par défaut du minifiltre, comme décrit dans la section Remarques pour FltAttachVolume.
[in, optional] dwCreatedInstanceNameLength
Longueur, en octets, de la mémoire tampon vers laquelle lpCreatedInstanceName pointe. Ce paramètre est facultatif et peut être égal à zéro.
[out, optional] lpCreatedInstanceName
Pointeur vers une variable allouée par l’appelant qui reçoit le nom instance pour la nouvelle instance si le instance est correctement attaché au volume. Ce paramètre est facultatif et peut être NULL. S’il n’est pas NULL, la mémoire tampon doit être suffisamment grande pour contenir INSTANCE_NAME_MAX_CHARS caractères plus une terminaison NULL.
Valeur retournée
FilterAttach retourne S_OK en cas de réussite. Sinon, il retourne une valeur d’erreur telle que l’une des valeurs suivantes.
Code de retour | Description |
---|---|
|
Un instance existe déjà à cette altitude sur le volume spécifié. |
|
Un instance existe déjà avec ce nom sur le volume spécifié. |
|
Si lpInstanceName n’a pas la valeur NULL, lpInstanceName ne correspond pas à un filtre inscrit instance nom dans le Registre. |
Remarques
FilterAttach est l’équivalent Win32 de FltAttachVolume.
Le nom instance spécifié dans lpInstanceName doit être unique dans le système.
Pour attacher un minifiltre instance à un volume à une altitude donnée, appelez FilterAttachAtAltitude.
Pour détacher un minifiltre instance d’un volume, appelez FilterDetach.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | fltuser.h (inclure Fltuser.h) |
Bibliothèque | FltLib.lib |
DLL | FltLib.dll |