Partager via


Fonction FsRtlAddToTunnelCache (ntifs.h)

La routine FsRtlAddToTunnelCache met en cache un nom de fichier qui est supprimé d’un répertoire lorsqu’un fichier est renommé ou supprimé.

Syntaxe

void FsRtlAddToTunnelCache(
  [in] TUNNEL         *Cache,
  [in] ULONGLONG      DirectoryKey,
  [in] UNICODE_STRING *ShortName,
  [in] UNICODE_STRING *LongName,
  [in] BOOLEAN        KeyByShortName,
  [in] ULONG          DataLength,
  [in] VOID           *Data
);

Paramètres

[in] Cache

Pointeur vers un cache de tunnel initialisé par FsRtlInitializeTunnelCache.

[in] DirectoryKey

Valeur de clé du répertoire contenant le fichier en cours de suppression ou de renommage. La clé de répertoire est un identificateur 64 bits unique non signé qui est généré et affecté au répertoire par le système de fichiers.

[in] ShortName

Chaîne Unicode contenant le nom court (8.3) du fichier. Si KeyByShortName a la valeur FALSE, ShortName est facultatif.

[in] LongName

Chaîne Unicode contenant le nom long du fichier. Un nom de fichier long est un nom pour un fichier ou un répertoire qui dépasse le format de nom de fichier standard 8.3. Si KeyByShortName a la valeur TRUE, LongName est facultatif.

[in] KeyByShortName

Définissez sur TRUE si le nom de fichier à supprimer du répertoire est le nom court du fichier, FALSE s’il s’agit du nom long.

[in] DataLength

Longueur en octets des informations à stocker dans l’entrée du cache du tunnel pour ce fichier. La valeur de ce paramètre est spécifique au système de fichiers, mais elle doit être la même pour toutes les entrées dans le cache du tunnel.

[in] Data

Pointeur vers une mémoire tampon qui contient des informations spécifiques au système de fichiers à stocker dans l’entrée de cache du tunnel pour ce fichier.

Valeur de retour

None

Remarques

Lorsqu’un nom de fichier est supprimé d’un répertoire (pour un fichier qui est renommé ou supprimé), le système de fichiers peut mettre en cache le nom de fichier en appelant FsRtlAddToTunnelCache. L’objectif du cache de tunnel est de propager des propriétés de fichier si un nouveau fichier est créé avec le même nom long ou court que le fichier qui vient d’être supprimé ou renommé.

FsRtlAddToTunnelCache crée une entrée qui contient le nom de fichier et la clé de répertoire spécifiés, puis ajoute l’entrée au cache du tunnel pour le volume monté où le fichier est supprimé ou supprimé. Cette entrée peut également contenir un paquet de données de taille fixe contenant des informations spécifiques au système de fichiers pour le fichier.

L’appelant doit synchroniser cet appel avec FsRtlDeleteTunnelCache. En d’autres termes, un système de fichiers doit s’assurer qu’il n’appelle pas FsRtlAddToTunnelCache et FsRtlDeleteTunnelCache en même temps à partir de différents threads.

Pour plus d’informations sur le tunneling de noms de fichiers, consultez l’article 172190 de la Base de connaissances Microsoft.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête ntifs.h (include Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Voir aussi

FsRtlDeleteKeyFromTunnelCache

FsRtlDeleteTunnelCache

FsRtlInitializeTunnelCache

UNICODE_STRING