Funzione FltQueryInformationByName (fltkernel.h)

La routine FltQueryInformationByName restituisce le informazioni richieste su un file denominato.

Sintassi

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

Parametri

[in] Filter

Specifica il filtro che sta avviando questa operazione.

[in, optional] Instance

Specifica l'istanza verso cui è destinata la creazione.

Importante

L'istanza non è necessariamente l'istanza di avvio. Deve corrispondere all'istanza verso cui è destinata la creazione, se questo parametro non è NULL. Se l'istanza non è NULL, il callback pre-create del filtro corrente non viene chiamato. I pre-callback iniziano con il filtro sotto il filtro corrente.

[in] ObjectAttributes

Puntatore a una struttura [OBJECT_ATTRIBUTES] con gli attributi da utilizzare per l'oggetto file, ad esempio il nome, SECURITY_DESCRIPTOR e così via.

[out] IoStatusBlock

Puntatore a una struttura IO_STATUS_BLOCK contenente il blocco di stato di I/O del chiamante.

[out] FileInformation

Puntatore a una struttura che riceve le informazioni richieste restituite sul file. Il tipo di struttura è determinato da FileInformationClass.

[in] Length

Lunghezza, in byte, del buffer FileInformation .

[in] FileInformationClass

Valore FILE_INFORMATION_CLASS enumerazione che specifica il tipo di informazioni da restituire sul file. I possibili valori sono i seguenti:

Valore Tipo di struttura a cui punta FileInformation
FileStatInformation FILE_STAT_INFORMATION
FileStatLxInformation **FILE_STAT_LX_INFORMATION
FileCaseSensitiveInformation FILE_CASE_SENSITIVE_INFORMATION. Il chiamante deve avere aperto il file con il flag FILE_READ_ATTRIBUTES specificato nel parametro DesiredAccess. Questo valore è disponibile a partire da Windows 10 versione 1803.
FileCaseSensitiveInformationForceAccessCheck FILE_CASE_SENSITIVE_INFORMATION. Si tratta di una versione speciale dell'operazione FileCaseSensitiveInformation usata per forzare i controlli di accesso per il driver in modalità kernel, analogamente ai controlli applicati a un chiamante in modalità utente. Questa operazione viene riconosciuta solo da IO Manager e un file system non dovrebbe mai riceverlo. Questo valore è disponibile a partire da Windows 10 versione 1803.

[in, optional] DriverContext

Puntatore allo spazio di contesto del driver.

Valore restituito

Restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, restituisce un codice di errore NTSTATUS appropriato.

Commenti

Questa funzione restituisce informazioni richieste su un file senza aprire il file effettivo. Le informazioni restituite sono determinate dal fileInformationClass specificato e vengono inserite nel buffer FileInformation del chiamante.

Se l'istanza non è NULL , la creazione verrà destinata all'istanza specificata, chiamando tutti i filtri sotto il filtro corrente prima di inviare l'I/O verso il basso. Se l'istanza è NULL, l'I/O verrà sempre inviato all'inizio dello stack di filtri.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1706
Intestazione fltkernel.h
Libreria FltMgr.lib
DLL Fltmgr.sys

Vedi anche

FILE_INFORMATION_CLASS