Fonction NtQueryInformationByName (ntifs.h)
NtQueryInformationByName retourne les informations demandées sur un fichier spécifié par le 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 de OBJECT_ATTRIBUTES qui contient les attributs du fichier, y compris le nom de fichier.
[out] IoStatusBlock
Pointeur d’une structure de IO_STATUS_BLOCK contenant les status 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 à partir de Windows 10 mise à jour d’avril 2018. |
FileCaseSensitiveInformation (71) | FILE_CASE_SENSITIVE_INFORMATION. Disponible à partir de Windows 10 mise à jour d’avril 2018. |
FileStatBasicInformation (77) | FILE_STAT_BASIC_INFORMATION. Disponible à partir de Windows 11, build 26048. |
Valeur retournée
NtQueryInformationByName retourne STATUS_SUCCESS en cas de réussite de l’exécution ; Sinon, elle 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 interroge 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, qui nécessite un fichier ouvert (et la fermeture du fichier ultérieure).
Les appelants de NtQueryInformationByName doivent être en cours d’exécution sur IRQL = PASSIVE_LEVEL et avec des API de noyau spéciales activées.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 version 1703 |
En-tête | ntifs.h |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (voir la section Remarques) |