Compartilhar via


Função ZwQueryVolumeInformationFile (ntddk.h)

A rotina ZwQueryVolumeInformationFile recupera informações sobre o volume associado a um determinado arquivo, diretório, dispositivo de armazenamento ou volume.

Sintaxe

NTSYSAPI NTSTATUS ZwQueryVolumeInformationFile(
  [in]  HANDLE               FileHandle,
  [out] PIO_STATUS_BLOCK     IoStatusBlock,
  [out] PVOID                FsInformation,
  [in]  ULONG                Length,
  [in]  FS_INFORMATION_CLASS FsInformationClass
);

Parâmetros

[in] FileHandle

Um identificador para um objeto de arquivo retornado por ZwCreateFile ou ZwOpenFile para um arquivo aberto, diretório, dispositivo de armazenamento ou volume para o qual as informações de volume estão sendo solicitadas.

[out] IoStatusBlock

Um ponteiro para uma estrutura IO_STATUS_BLOCK que recebe o status de conclusão final e informações sobre a operação de consulta. Para chamadas bem-sucedidas que retornam dados, o número de bytes gravados no buffer de do FsInformation é retornado no membro Information da estrutura.

[out] FsInformation

Um ponteiro para um buffer alocado por chamador que recebe as informações desejadas sobre o volume. A estrutura das informações retornadas no buffer é definida pelo parâmetro FsInformationClass.

[in] Length

Tamanho em bytes do buffer apontado por FsInformation . O chamador deve definir esse parâmetro de acordo com oFsInformationClass determinado.

[in] FsInformationClass

Tipo de informação a ser retornada sobre o volume. Defina esse membro como um dos seguintes valores de enumeração FS_INFORMATION_CLASS.

Valor Significado
FileFsAttributeInformation Retornar uma estrutura de FILE_FS_ATTRIBUTE_INFORMATION que contém informações de atributo sobre o sistema de arquivos responsável pelo volume.
FileFsControlInformation Retornar uma estrutura de FILE_FS_CONTROL_INFORMATION que contém informações de controle do sistema de arquivos sobre o volume.
FileFsDeviceInformation Retornar uma estrutura de FILE_FS_DEVICE_INFORMATION que contém informações do dispositivo para o volume.
FileFsDriverPathInformation Retorne uma estrutura de FILE_FS_DRIVER_PATH_INFORMATION que contém informações sobre se um driver especificado está no caminho de E/S para o volume. O chamador deve armazenar o nome do driver na estrutura FILE_FS_DRIVER_PATH_INFORMATION antes de chamar ZwQueryVolumeInformationFile.
FileFsFullSizeInformation Retorne uma estrutura de FILE_FS_FULL_SIZE_INFORMATION que contém informações sobre a quantidade total de espaço disponível no volume.
FileFsObjectIdInformation Retornar uma estrutura de FILE_FS_OBJECTID_INFORMATION que contém informações de ID de objeto específicas do sistema de arquivos para o volume. Observe que isso não é o mesmo que o nome de volume exclusivo (baseado em GUID) atribuído pelo sistema operacional.
FileFsSizeInformation Retorne uma estrutura de FILE_FS_SIZE_INFORMATION que contém informações sobre a quantidade de espaço no volume que está disponível para o usuário associado ao thread de chamada.
FileFsVolumeInformation Retornar um FILE_FS_VOLUME_INFORMATION que contém informações sobre o volume, como o rótulo de volume, o número de série e o tempo de criação.
FileFsSectorSizeInformation Retornar uma estrutura de FILE_FS_SECTOR_SIZE_INFORMATION que contém informações sobre os tamanhos do setor físico e lógico de um volume.

Valor de retorno

ZwQueryVolumeInformationFile retorna STATUS_SUCCESS ou um status de erro apropriado.

Observações

ZwQueryVolumeInformationFile recupera informações sobre o volume associado a um determinado arquivo, diretório, dispositivo de armazenamento ou volume.

Se o FileHandle representar um dispositivo direto aberto, somente FileFsDeviceInformation poderá ser especificado como o valor de FsInformationClass.

ZwQueryVolumeInformationFile retorna zero em qualquer membro de uma estrutura de_INFORMATION XXX FILE_que não é compatível com o sistema de arquivos.

Para obter informações sobre outras rotinas de consulta de informações de arquivo, consulte Objetos de Arquivo.

Os minifiltros devem usar FltQueryVolumeInformationFile em vez de ZwQueryVolumeInformationFile .

Os chamadores de ZwQueryVolumeInformationFile devem estar em execução em IRQL = PASSIVE_LEVEL e com APCs de kernel especiais habilitadas.

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

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
da Plataforma de Destino Universal
cabeçalho ntddk.h (inclua Ntifs.h, Ntddk.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (consulte a seção Comentários)
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte também

FILE_FS_ATTRIBUTE_INFORMATION

FILE_FS_CONTROL_INFORMATION

FILE_FS_DEVICE_INFORMATION

FILE_FS_DRIVER_PATH_INFORMATION

FILE_FS_FULL_SIZE_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FILE_FS_SIZE_INFORMATION

FILE_FS_VOLUME_INFORMATION

FltQueryVolumeInformationFile

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

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

ZwCreateFile

ZwOpenFile

ZwQueryDirectoryFile

ZwQueryInformationFile

ZwSetInformationFile

ZwSetVolumeInformationFile