Partager via


Fonction NtQueryInformationByName (ntifs.h)

NtQueryInformationByName retourne les informations demandées sur un fichier spécifié par nom de fichier.

Syntaxe

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationByName(
  [in]  POBJECT_ATTRIBUTES     ObjectAttributes,
  [out] PIO_STATUS_BLOCK       IoStatusBlock,
  [out] PVOID                  FileInformation,
  [in]  ULONG                  Length,
  [in]  FILE_INFORMATION_CLASS FileInformationClass
);

Paramètres

[in] ObjectAttributes

Pointeur vers une structure OBJECT_ATTRIBUTES qui contient les attributs du fichier, y compris le nom de fichier.

[out] IoStatusBlock

Pointez une structure IO_STATUS_BLOCK contenant l’état d’E/S de l’appelant.

[out] FileInformation

Pointeur vers la mémoire tampon fournie par l’appelant dans laquelle retourner les informations demandées sur le fichier. La structure de la mémoire tampon est déterminée par le paramètre FileInformationClass.

[in] Length

Longueur, en octets, de la mémoire tampon vers laquelle FileInformation pointe.

[in] FileInformationClass

Valeur FILE_INFORMATION_CLASS qui identifie le type d’informations de fichier à retourner dans la mémoire tampon vers laquelle FileInformation pointe. FileInformationClass peut être l’une des valeurs suivantes.

valeur FILE_INFORMATION_CLASS Type d’informations à retourner
FileStatInformation (68) FILE_STAT_INFORMATION. Disponible à partir de Windows 10, version 1709.
FileStatLxInformation (70) FILE_STAT_LX_INFORMATION. Disponible à compter de la mise à jour d’avril 2018 de Windows 10.
FileCaseSensitiveInformation (71) FILE_CASE_SENSITIVE_INFORMATION. Disponible à compter de la mise à jour d’avril 2018 de Windows 10.
FileStatBasicInformation (77) FILE_STAT_BASIC_INFORMATION. Disponible à partir de Windows 11, build 26048.

Valeur de retour

NtQueryInformationByName retourne STATUS_SUCCESS une fois l’exécution réussie ; sinon, il retourne un code d’erreur, tel que l’un des éléments suivants.

Code d’erreur Signification
STATUS_INVALID_PARAMETER Le paramètre FileInformationClass contient une valeur non valide.
STATUS_INFO_LENGTH_MISMATCH La taille de la mémoire tampon spécifiée par Length n’est pas suffisamment grande pour contenir les informations demandées.

Remarques

NtQueryInformationByName requêtes et retourne les informations demandées sur le fichier. Il le fait sans ouvrir le fichier réel, ce qui le rend plus efficace que NtQueryInformationFile, ce qui nécessite un fichier ouvert (et la fermeture du fichier suivant).

Les appelants de NtQueryInformationByName doivent s’exécuter à IRQL = PASSIVE_LEVEL et avec des API de noyau spéciales activées.

Exigences

Exigence Valeur
client minimum pris en charge Windows 10, version 1703
d’en-tête ntifs.h
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (voir la section Remarques)

Voir aussi

FILE_CASE_SENSITIVE_INFORMATION

FILE_INFORMATION_CLASS

FILE_STAT_INFORMATION

FILE_STAT_LX_INFORMATION

IO_STATUS_BLOCK

NtQueryInformationFile

OBJECT_ATTRIBUTES