Função FltQueryInformationByName (fltkernel.h)

A rotina FltQueryInformationByName retorna as informações solicitadas sobre um arquivo nomeado.

Sintaxe

NTSTATUS FLTAPI FltQueryInformationByName(
  [in]           PFLT_FILTER               Filter,
  [in, optional] PFLT_INSTANCE             Instance,
  [in]           POBJECT_ATTRIBUTES        ObjectAttributes,
  [out]          PIO_STATUS_BLOCK          IoStatusBlock,
  [out]          PVOID                     FileInformation,
  [in]           ULONG                     Length,
  [in]           FILE_INFORMATION_CLASS    FileInformationClass,
  [in, optional] PIO_DRIVER_CREATE_CONTEXT DriverContext
);

Parâmetros

[in] Filter

Especifica o filtro que está iniciando essa operação.

[in, optional] Instance

Especifica a instância para a qual a criação é direcionada.

Importante

A instância não é necessariamente a instância inicial. Ele deve corresponder à instância para a qual a criação é direcionada, se esse parâmetro não for NULL. Se Instance for não NULL, o retorno de chamada de pré-criação do filtro atual não será chamado. Os pré-retornos de chamada começam com o filtro abaixo do filtro atual.

[in] ObjectAttributes

Ponteiro para uma estrutura [OBJECT_ATTRIBUTES] com os atributos a serem usados para o objeto de arquivo (por exemplo, seu nome, SECURITY_DESCRIPTOR etc.).

[out] IoStatusBlock

Ponteiro para uma estrutura IO_STATUS_BLOCK que contém o bloco de status de E/S do chamador.

[out] FileInformation

Ponteiro para uma estrutura que recebe as informações solicitadas retornadas sobre o arquivo. O tipo de estrutura é determinado por FileInformationClass.

[in] Length

O comprimento, em bytes, do buffer FileInformation .

[in] FileInformationClass

Um FILE_INFORMATION_CLASS valor de enumeração que especifica o tipo de informação a ser retornado sobre o arquivo. Pode ser um dos seguintes valores:

Valor Tipo de estrutura para a qual FileInformation aponta
FileStatInformation FILE_STAT_INFORMATION
FileStatLxInformation **FILE_STAT_LX_INFORMATION
FileCaseSensitiveInformation FILE_CASE_SENSITIVE_INFORMATION. O chamador deve ter aberto o arquivo com o sinalizador FILE_READ_ATTRIBUTES especificado no parâmetro DesiredAccess. Esse valor está disponível a partir do Windows 10, versão 1803.
FileCaseSensitiveInformationForceAccessCheck FILE_CASE_SENSITIVE_INFORMATION. Esta é uma versão especial da operação FileCaseSensitiveInformation que é usada para forçar o Gerenciador de E/S a executar verificações de acesso para o driver do modo kernel, semelhante às verificações que se aplicam a um chamador de modo de usuário. Essa operação só é reconhecida pelo Gerenciador de E/S e um sistema de arquivos nunca deve recebê-la. Esse valor está disponível a partir do Windows 10, versão 1803.

[in, optional] DriverContext

Um ponteiro para o espaço de contexto do driver.

Retornar valor

Retorna STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, retornará um código de erro NTSTATUS apropriado.

Comentários

Essa função retorna informações solicitadas sobre um arquivo sem abrir o arquivo real. As informações retornadas são determinadas pelo FileInformationClass especificado e são colocadas no buffer FileInformation do chamador.

Se Instance for não NULL , a criação será direcionada para a instância especificada, chamando todos os filtros abaixo do filtro atual antes de enviar a E/S para baixo. Se a Instância for NULL, a E/S sempre será enviada para a parte superior da pilha de filtros.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1706
Cabeçalho fltkernel.h
Biblioteca FltMgr.lib
DLL Fltmgr.sys

Confira também

FILE_INFORMATION_CLASS