Compartilhar via


Função ZwSetQuotaInformationFile (ntifs.h)

O ZwSetQuotaInformationFile altera as entradas de cota de rotina para o volume associado ao parâmetro FileHandle. Todas as entradas de cota no buffer especificado são aplicadas ao volume.

Sintaxe

NTSYSAPI NTSTATUS ZwSetQuotaInformationFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PVOID            Buffer,
  [in]  ULONG            Length
);

Parâmetros

[in] FileHandle

Um identificador para o objeto de arquivo que representa o arquivo ou volume para o qual as informações de cota devem ser modificadas.

[out] IoStatusBlock

O endereço do bloco de status de E/S do chamador.

[in] Buffer

Um buffer que contém as novas entradas de cota que devem ser aplicadas ao volume. As informações de cota devem ser formatadas como uma ou mais estruturas FILE_QUOTA_INFORMATION. O campo NextEntryOffset na estrutura FILE_QUOTA_INFORMATION contém o deslocamento, em bytes, da próxima entrada de cota na lista. Se não houver mais entradas após a atual, esse membro será zero.

[in] Length

O comprimento em bytes do buffer.

Valor de retorno

A rotina de ZwSetQuotaInformationFile retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como um dos seguintes:

Código de retorno Descrição
STATUS_INSUFFICIENT_RESOURCES Não havia recursos suficientes para concluir a operação. Este é um código de erro.
STATUS_INVALID_DEVICE_REQUEST As cotas não estão habilitadas no volume. Este é um código de erro.
STATUS_MEDIA_WRITE_PROTECTED O volume é somente leitura. Este é um código de erro.

Observações

A rotina de ZwSetQuotaInformationFile aplica todas as entradas de cota no parâmetro buffer especificado ao volume.

A função IoCheckQuotaBufferValidity pode verificar se o buffer de cota especificado passou como o parâmetro de do Buffer de é válido.

Uma chamada para ZwSetQuotaInformationFile resultará em uma solicitação IRP_MJ_SET_QUOTA sendo enviada ao objeto de dispositivo associado ao objeto de arquivo cujo identificador está armazenado no parâmetro filehandle .

Se o sistema de arquivos subjacente não oferecer suporte a informações de cota (sistemas de arquivos FAT e CDFS, por exemplo), ZwSetQuotaInformationFile falhará ao retornar STATUS_INVALID_DEVICE_REQUEST.

Nota

Se a chamada para a função ZwSetQuotaInformationFile ocorrer no modo de usuário, você deverá usar o nome "NtSetQuotaInformationFile" em vez de "ZwSetQuotaInformationFile".

Para chamadas de drivers no modo kernel, as versões NtXxx e Zwxxx versões de uma rotina dos Serviços de Sistema Nativo do Windows podem se comportar de forma diferente na maneira como lidam e interpretam parâmetros de entrada. Para obter mais informações sobre a relação entre as versões NtXxx e ZwXxx de uma rotina, consulte Usando versões Nt e Zw das rotinas de serviços do sistema nativo.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 7
da Plataforma de Destino Universal
cabeçalho ntifs.h (inclua Ntifs.h, FltKernel.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte também

FILE_GET_QUOTA_INFORMATION

FILE_QUOTA_INFORMATION

IO_STATUS_BLOCK

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA

IoCheckQuotaBufferValidity

usando versões Nt e Zw das rotinas de serviços do sistema nativo

ZwQueryQuotaInformationFile