Partager via


Fonction FsRtlInsertPerFileObjectContext (ntifs.h)

Pour un pilote de filtre de système de fichiers « hérité », la fonction FsRtlInsertPerFileObjectContext associe les informations de contexte à un objet de fichier.

Syntaxe

NTSTATUS FsRtlInsertPerFileObjectContext(
  [in] PFILE_OBJECT                  FileObject,
  [in] PFSRTL_PER_FILEOBJECT_CONTEXT Ptr
);

Paramètres

[in] FileObject

Pointeur vers l’objet fichier auquel associer des informations de contexte (données par le paramètre Ptr ).

[in] Ptr

Pointeur vers une structure FSRTL_PER_FILEOBJECT_CONTEXT allouée et initialisée par l’appelant à associer à FileObject. La structure peut être utilisée telle ou incorporée dans une structure d’informations de contexte par objet de fichier définie par pilote. Pour initialiser la structure, utilisez la macro FsRtlInitPerFileObjectContext .

Valeur retournée

FsRtlInsertPerFileObjectContext retourne une valeur NTSTATUS appropriée, telle que l’une des valeurs suivantes :

Code de retour Description
STATUS_SUCCESS
La structure d’informations de contexte a été correctement associée à l’objet file.
STATUS_INVALID_PARAMETER
Le paramètre FileObject a la valeur NULL.
STATUS_INSUFFICIENT_RESOURCES
Le système ne dispose pas de ressources suffisantes pour terminer l’opération. Par exemple, une extension d’objet de fichier n’a pas pu être allouée pour FileObject.

Remarques

Un pilote de filtre de système de fichiers appelle FsRtlInsertPerFileObjectContext pour associer sa propre structure de contexte par objet de fichier à un objet de fichier. La structure de contexte contient des informations de contexte que le pilote de filtre conserve pour l’objet de fichier. La fonction FsRtlInsertPerStreamContext insère la structure de contexte Ptr dans la liste de contextes pour FileObject.

Toutes les structures d’informations de contexte par objet de fichier doivent être ou contenir une structure FSRTL_PER_FILEOBJECT_CONTEXT initialisée. Utilisez la macro FsRtlInitPerFileObjectContext pour initialiser une structure FSRTL_PER_FILEOBJECT_CONTEXT.

Une fois qu’une structure FSRTL_PER_FILEOBJECT_CONTEXT ou une structure de contexte par objet-fichier définie par filtre (contenant une structure de FSRTL_PER_FILEOBJECT_CONTEXT initialisée) a été associée à un objet de fichier, elle peut être récupérée en appelant FsRtlLookupPerFileObjectContext ou supprimée en appelant FsRtlRemovePerFileObjectContext.

Note Les pilotes de minifiltre du système de fichiers ne doivent pas utiliser les fonctions FsRtlXxxPerFileObjectContext . Au lieu de cela, les minifiltres peuvent utiliser les fonctions de contexteFltXxx pour associer des informations de contexte à un objet de fichier. Pour obtenir la liste complète, consultez la rubrique FSRTL_PER_FILEOBJECT_CONTEXT .
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Plateforme cible Universal
En-tête ntifs.h (inclure Fltkernel.h, Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Voir aussi

FSRTL_PER_FILEOBJECT_CONTEXT

FsRtlInitPerFileObjectContext

FsRtlLookupPerFileObjectContext

FsRtlRemovePerFileObjectContext