Fonction FltGetVolumeFromFileObject (fltkernel.h)

La routine FltGetVolumeFromFileObject retourne un pointeur opaque pour le volume sur lequel réside un flux de fichiers donné.

Syntaxe

NTSTATUS FLTAPI FltGetVolumeFromFileObject(
  [in]  PFLT_FILTER  Filter,
  [in]  PFILE_OBJECT FileObject,
  [out] PFLT_VOLUME  *RetVolume
);

Paramètres

[in] Filter

Pointeur de filtre opaque pour l’appelant. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.

[in] FileObject

Pointeur d’objet de fichier pour un flux de fichiers qui réside sur le volume.

[out] RetVolume

Pointeur vers une variable allouée par l’appelant qui reçoit un pointeur opaque pour le volume. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.

Valeur retournée

FltGetVolumeFromFileObject retourne STATUS_SUCCESS ou une valeur NTSTATUS appropriée, par exemple :

Code de retour Description
STATUS_FLT_DELETING_OBJECT
Le volume est en train d’être détruit. Il s’agit d’un code d’erreur.
STATUS_INVALID_PARAMETER
Aucun volume correspondant n’a été trouvé. Il s’agit d’un code d’erreur.

Remarques

FltGetVolumeFromFileObject ajoute une référence d’exécution au pointeur de volume opaque retourné dans le paramètre RetVolume . Lorsque ce pointeur n’est plus nécessaire, l’appelant doit le libérer en appelant FltObjectDereference. Ainsi, chaque appel réussi à FltGetVolumeFromFileObject doit être mis en correspondance par un appel ultérieur à FltObjectDereference.

Pour obtenir un pointeur vers l’objet d’appareil pour un volume donné, appelez FltGetDeviceObject.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête fltkernel.h (inclure Fltkernel.h)
Bibliothèque FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Voir aussi

FltGetDeviceObject

FltGetDiskDeviceObject

FltGetVolumeFromDeviceObject

FltObjectDereference