Fonction FsRtlGetFileSize (ntifs.h)

La routine FsRtlGetFileSize est utilisée pour obtenir la taille d’un fichier.

Syntaxe

NTSTATUS FsRtlGetFileSize(
  [in]  PFILE_OBJECT   FileObject,
  [out] PLARGE_INTEGER FileSize
);

Paramètres

[in] FileObject

Pointeur vers l’objet de fichier à interroger.

[out] FileSize

Pointeur vers un entier volumineux qui reçoit la taille du fichier lors de la sortie.

Valeur retournée

FsRtlGetFileSize retourne STATUS_SUCCESS ou une status d’erreur appropriée représentant la status d’achèvement finale de l’opération. Les codes de status d’erreur possibles incluent les éléments suivants :

Code de retour Description
STATUS_INSUFFICIENT_RESOURCES
La mémoire nécessaire à l’utilisation de cette fonction n’a pas pu être allouée.
STATUS_FILE_IS_A_DIRECTORY
L’objet FileObject spécifié fait référence à un répertoire.

Remarques

La routine FsRtlGetFileSize est utilisée pour récupérer la taille de fichier d’un fichier. Contrairement à ZwQueryInformationFile, FsRtlGetFileSize n’acquiert pas le verrou d’objet de fichier sur les objets de fichier synchrones. Si vous possédez déjà des ressources de système de fichiers, vous devez appeler FsRtlGetFileSize au lieu de ZwQueryInformationFile, car une tentative d’acquisition du verrou d’objet de fichier violerait l’ordre de verrouillage et entraînerait des blocages. La fonction ZwQueryInformationFile doit être uniquement si vous ne possédez pas déjà de ressources de système de fichiers.

FsRtlGetFileSize utilise des E/S rapides si elle est prise en charge ou une requête basée sur IRP standard pour extraire la taille du fichier.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête ntifs.h (inclure Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Règles de conformité DDI HwStorPortProhibitedDDIs(storport),PowerIrpDDis(wdm)

Voir aussi

FltQueryInformationFile

ZwQueryInformationFile