Compartir a través de


Función ZwQueryQuotaInformationFile (ntifs.h)

La rutina ZwQueryQuotaInformationFile recupera 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 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 sola 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 se inicia 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 de 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 de 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.

Observaciones

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 provocará que se envíe una solicitud IRP_MJ_SET_QUOTA 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 producirá un error al devolver STATUS_INVALID_DEVICE_REQUEST.

Nota

Si la llamada al 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 NtXxx y Zwversiones de Xxx de una rutina de Servicios del sistema nativo de Windows 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 de NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 7
de la plataforma de destino de Universal
encabezado de ntifs.h (incluya Ntifs.h, FltKernel.h)
biblioteca de NtosKrnl.lib
DLL de 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

usar versiones Nt y Zw de las rutinas de servicios del sistema nativo

ZwSetQuotaInformationFile