Compartir a través de


Función ZwQueryQuotaInformationFile (ntifs.h)

La rutina ZwQueryQuotaInformationFile recupera las entradas de cuota asociadas al volumen especificado por el parámetro FileHandle .

Sintaxis

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
);

Parámetros

[in] FileHandle

Identificador del objeto de archivo que representa el archivo o volumen para el que se solicita la información de cuota.

[out] IoStatusBlock

Dirección del bloque de estado de E/S del autor de la llamada.

[out] Buffer

Búfer para recibir la información de cuota del volumen. La información de cuota tiene el formato de una o varias estructuras de FILE_QUOTA_INFORMATION . El campo NextEntryOffset de la estructura FILE_QUOTA_INFORMATION contiene el desplazamiento, en bytes, de la siguiente entrada de cuota de la lista. Si no hay más entradas después de la actual, este miembro es cero.

[in] Length

Longitud, en bytes, del búfer.

[in] ReturnSingleEntry

Valor booleano que indica si solo se debe devolver una única entrada en lugar de rellenar el búfer con tantas entradas como sea posible.

[in, optional] SidList

Lista opcional de SID cuya información de cuota se va a devolver. Cada entrada de la lista es una estructura FILE_GET_QUOTA_INFORMATION . El campo NextEntryOffset de la estructura FILE_GET_QUOTA_INFORMATION contiene el desplazamiento, en bytes, de la siguiente entrada de cuota de la lista. Si no hay más entradas después de la actual, este miembro es cero.

[in] SidListLength

Longitud en bytes de la lista de SID , si se especificó una.

[in, optional] StartSid

Puntero opcional al SID de la entrada en la que se va a comenzar a examinar la información de cuota. Este parámetro debe establecerse si la información devuelta es comenzar con una entrada distinta del primer SID. Este parámetro se omite si se especifica un parámetro SidList .

[in] RestartScan

Valor booleano que indica si el examen de la información de cuota se va a reiniciar desde el principio. Establezca este parámetro en TRUE si el examen de la información de cuota es comenzar en la primera entrada de la lista de información de cuota del volumen. Establezca en FALSE si reanuda el examen desde una llamada anterior a ZwQueryQuotaInformationFile. El autor de la llamada debe establecer este parámetro en TRUE al llamar a ZwQueryQuotaInformationFile por primera vez.

Valor devuelto

La rutina ZwQueryQuotaInformationFile devuelve STATUS_SUCCESS si se devuelve al menos una estructura de FILE_QUOTA_INFORMATION en el parámetro Buffer o en un valor NTSTATUS adecuado, como uno de los siguientes:

Código devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES No había recursos suficientes para completar la operación. Se trata de un código de error.
STATUS_INVALID_DEVICE_REQUEST Las cuotas no están habilitadas en el volumen. Se trata de un código de error.
STATUS_INVALID_SID El parámetro StartSid no contenía un SID válido. Se trata de un código de error.
STATUS_QUOTA_LIST_INCONSISTENT El parámetro SidList no contenía una lista válida y formada correctamente. Se trata de un código de error.

Comentarios

La cantidad de información devuelta por ZwQueryQuotaInformationFile se basa en el tamaño de la información de cuota asociada al volumen, el tamaño del búfer y si se ha solicitado un conjunto específico de entradas.

Una llamada a ZwQueryQuotaInformationFile dará como resultado una solicitud IRP_MJ_SET_QUOTA que se envía al objeto de dispositivo asociado al objeto de archivo cuyo identificador se almacena en el parámetro FileHandle .

Si el sistema de archivos subyacente no admite información de cuota (sistemas de archivos FAT y CDFS, por ejemplo), ZwQueryQuotaInformationFile no devolverá STATUS_INVALID_DEVICE_REQUEST.

Nota

Si la llamada a la función ZwQueryQuotaInformationFile se produce en modo de usuario, debe usar el nombre "NtQueryQuotaInformationFile" en lugar de "ZwQueryQuotaInformationFile".

En el caso de las llamadas desde controladores en modo kernel, las versiones NtXxx y ZwXxx de una rutina de Windows Native System Services pueden comportarse de forma diferente en la forma en que controlan e interpretan los parámetros de entrada. Para obtener más información sobre la relación entre las versiones NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h, FltKernel.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte también

FILE_GET_QUOTA_INFORMATION

FILE_QUOTA_INFORMATION

IO_STATUS_BLOCK

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA

IoCheckQuotaBufferValidity

Uso de las versiones Nt y Zw de las rutinas nativas de System Services

ZwSetQuotaInformationFile