Partager via


ZwQueryQuotaInformationFile, fonction (ntifs.h)

La routine ZwQueryQuotaInformationFile récupère les entrées de quota associées au volume spécifié par le paramètre FileHandle.

Syntaxe

NTSYSAPI NTSTATUS ZwQueryQuotaInformationFile(
  [in]           HANDLE           FileHandle,
  [out]          PIO_STATUS_BLOCK IoStatusBlock,
  [out]          PVOID            Buffer,
  [in]           ULONG            Length,
  [in]           BOOLEAN          ReturnSingleEntry,
  [in, optional] PVOID            SidList,
  [in]           ULONG            SidListLength,
  [in, optional] PSID             StartSid,
  [in]           BOOLEAN          RestartScan
);

Paramètres

[in] FileHandle

Handle pour l’objet de fichier qui représente le fichier ou le volume pour lequel les informations de quota sont demandées.

[out] IoStatusBlock

Adresse du bloc d’état d’E/S de l’appelant.

[out] Buffer

Mémoire tampon pour recevoir les informations de quota pour le volume. Les informations de quota sont mises en forme sous forme d’une ou plusieurs structures FILE_QUOTA_INFORMATION. Le champ NextEntryOffset dans la structure FILE_QUOTA_INFORMATION contient le décalage, en octets, de l’entrée de quota suivante dans la liste. S’il n’y a plus d’entrées après celle en cours, ce membre est égal à zéro.

[in] Length

Longueur en octets de la mémoire tampon.

[in] ReturnSingleEntry

Valeur booléenne qui indique si une seule entrée doit être retournée plutôt que de remplir la mémoire tampon avec autant d’entrées que possible.

[in, optional] SidList

Liste facultative des SID dont les informations de quota doivent être retournées. Chaque entrée de la liste est une structure FILE_GET_QUOTA_INFORMATION. Le champ NextEntryOffset dans la structure FILE_GET_QUOTA_INFORMATION contient le décalage, en octets, de l’entrée de quota suivante dans la liste. S’il n’y a plus d’entrées après celle en cours, ce membre est égal à zéro.

[in] SidListLength

Longueur en octets de la liste SID, si une valeur a été spécifiée.

[in, optional] StartSid

Pointeur facultatif vers le SID de l’entrée à laquelle commencer l’analyse des informations de quota. Ce paramètre doit être défini si les informations retournées doivent commencer par une entrée autre que le premier SID. Ce paramètre est ignoré si un paramètre SidList est spécifié.

[in] RestartScan

Valeur booléenne qui indique si l’analyse des informations de quota doit être redémarrée à partir du début. Définissez ce paramètre sur TRUE si l’analyse des informations de quota doit commencer à la première entrée dans la liste des informations de quota du volume. Définissez la valeur FALSE si vous reprenez l’analyse à partir d’un appel précédent vers ZwQueryQuotaInformationFile. L’appelant doit définir ce paramètre sur TRUE lors de l’appel de ZwQueryQuotaInformationFile pour la première fois.

Valeur de retour

La routine ZwQueryQuotaInformationFile retourne STATUS_SUCCESS si au moins une structure FILE_QUOTA_INFORMATION est retournée dans le paramètre buffer ou une valeur NTSTATUS appropriée, comme l’une des suivantes :

Retourner le code Description
STATUS_INSUFFICIENT_RESOURCES Il y avait des ressources insuffisantes pour terminer l’opération. Il s’agit d’un code d’erreur.
STATUS_INVALID_DEVICE_REQUEST Les quotas ne sont pas activés sur le volume. Il s’agit d’un code d’erreur.
STATUS_INVALID_SID Le paramètre startSid ne contenait pas deSID valide. Il s’agit d’un code d’erreur.
STATUS_QUOTA_LIST_INCONSISTENT Le paramètre SidList ne contenait pas de liste valide et correctement formée. Il s’agit d’un code d’erreur.

Remarques

La quantité d’informations retournées par ZwQueryQuotaInformationFile est basée sur la taille des informations de quota associées au volume, la taille de la mémoire tampon et la demande d’un ensemble spécifique d’entrées.

Un appel à ZwQueryQuotaInformationFile entraîne l’envoi d’une requête IRP_MJ_SET_QUOTA à l’objet d’appareil associé à l’objet de fichier dont le handle est stocké dans le paramètre FileHandle .

Si le système de fichiers sous-jacent ne prend pas en charge les informations de quota (systèmes de fichiers FAT et CDFS, par exemple), ZwQueryQuotaInformationFile ne retourne pas STATUS_INVALID_DEVICE_REQUEST.

Note

Si l’appel à la fonction ZwQueryQuotaInformationFile se produit en mode utilisateur, vous devez utiliser le nom «NtQueryQuotaInformationFile» au lieu de «ZwQueryQuotaInformationFile».

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 de 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 Using Nt and Zw Versions of the Native System Services Routines.

Exigences

Exigence Valeur
client minimum pris en charge Windows 7
plateforme cible Universel
d’en-tête ntifs.h (include Ntifs.h, FltKernel.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
règles de conformité DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Voir aussi

FILE_GET_QUOTA_INFORMATION

FILE_QUOTA_INFORMATION

IO_STATUS_BLOCK

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA

IoCheckQuotaBufferValidity

à l’aide de versions Nt et Zw des routines natives des services système

ZwSetQuotaInformationFile