Fonction ZwQueryVolumeInformationFile (ntddk.h)
La routine ZwQueryVolumeInformationFile récupère des informations sur le volume associé à un fichier, un répertoire, un périphérique de stockage ou un volume donné.
Syntaxe
NTSYSAPI NTSTATUS ZwQueryVolumeInformationFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass
);
Paramètres
[in] FileHandle
Handle à un objet de fichier retourné par ZwCreateFile ou ZwOpenFile pour un fichier, un répertoire, un périphérique de stockage ou un volume ouvert pour lequel des informations de volume sont demandées.
[out] IoStatusBlock
Pointeur vers une structure de IO_STATUS_BLOCK qui reçoit le status d’achèvement final et des informations sur l’opération de requête. Pour les appels réussis qui retournent des données, le nombre d’octets écrits dans la mémoire tampon FsInformation est retourné dans le membre Informations de la structure.
[out] FsInformation
Pointeur vers une mémoire tampon allouée à l’appelant qui reçoit les informations souhaitées sur le volume. La structure des informations retournées dans la mémoire tampon est définie par le paramètre FsInformationClass .
[in] Length
Taille en octets de la mémoire tampon pointée vers FsInformation. L’appelant doit définir ce paramètre en fonction de la FsInformationClass donnée.
[in] FsInformationClass
Type d’informations à retourner sur le volume. Définissez ce membre sur l’une des valeurs d’énumération FS_INFORMATION_CLASS suivantes.
Valeur | Signification |
---|---|
FileFsAttributeInformation | Retourne une structure FILE_FS_ATTRIBUTE_INFORMATION contenant des informations d’attribut sur le système de fichiers responsable du volume. |
FileFsControlInformation | Retourne une structure de FILE_FS_CONTROL_INFORMATION contenant des informations de contrôle du système de fichiers sur le volume. |
FileFsDeviceInformation | Retourne une structure FILE_FS_DEVICE_INFORMATION contenant des informations sur l’appareil pour le volume. |
FileFsDriverPathInformation | Retourne une structure FILE_FS_DRIVER_PATH_INFORMATION contenant des informations indiquant si un pilote spécifié se trouve dans le chemin d’E/S du volume. L’appelant doit stocker le nom du pilote dans la structure FILE_FS_DRIVER_PATH_INFORMATION avant d’appeler ZwQueryVolumeInformationFile. |
FileFsFullSizeInformation | Retourne une structure de FILE_FS_FULL_SIZE_INFORMATION contenant des informations sur la quantité totale d’espace disponible sur le volume. |
FileFsObjectIdInformation | Retourne une structure de FILE_FS_OBJECTID_INFORMATION contenant des informations d’ID d’objet spécifiques au système de fichiers pour le volume. Notez que ce n’est pas la même chose que le nom de volume unique (basé sur le GUID) attribué par le système d’exploitation. |
FileFsSizeInformation | Retourne une structure FILE_FS_SIZE_INFORMATION contenant des informations sur la quantité d’espace disponible pour l’utilisateur associé au thread appelant. |
FileFsVolumeInformation | Retourne une FILE_FS_VOLUME_INFORMATION contenant des informations sur le volume, telles que l’étiquette du volume, le numéro de série et l’heure de création. |
FileFsSectorSizeInformation | Retourne une structure FILE_FS_SECTOR_SIZE_INFORMATION qui contient des informations sur les tailles de secteur physique et logique d’un volume. |
Valeur retournée
ZwQueryVolumeInformationFile retourne STATUS_SUCCESS ou une status d’erreur appropriée.
Remarques
ZwQueryVolumeInformationFile récupère des informations sur le volume associé à un fichier, répertoire, périphérique de stockage ou volume donné.
Si fileHandle représente un appareil direct ouvert, seul FileFsDeviceInformation peut être spécifié comme valeur de FsInformationClass.
ZwQueryVolumeInformationFile retourne zéro dans n’importe quel membre d’une structure FILE_XXX_INFORMATION qui n’est pas prise en charge par le système de fichiers.
Pour plus d’informations sur d’autres routines de requête d’informations de fichier, consultez Objets de fichier.
Les minifiltres doivent utiliser FltQueryVolumeInformationFile au lieu de ZwQueryVolumeInformationFile.
Les appelants de ZwQueryVolumeInformationFile doivent être en cours d’exécution à IRQL = PASSIVE_LEVEL et avec des API de noyau spéciales activées.
Si l’appel à la fonction ZwQueryVolumeInformationFile se produit en mode utilisateur, vous devez utiliser le nom « NtQueryVolumeInformationFile » au lieu de « ZwQueryVolumeInformationFile ».
Pour les appels à partir de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment dans la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Utilisation des versions Nt et Zw des routines des services système natifs.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ntddk.h (inclure Ntifs.h, Ntddk.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (voir la section Remarques) |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),PowerIrpDDis(wdm) |
Voir aussi
FILE_FS_DRIVER_PATH_INFORMATION
IRP_MJ_QUERY_VOLUME_INFORMATION
Utilisation des versions Nt et Zw des routines natives des services système natifs