Condividi tramite


Funzione FsRtlQueryKernelEaFile (ntifs.h)

La routine FsRtlQueryKernelEaFile viene usata per compilare una richiesta QueryEA esplicita e attendere in modo sincrono il completamento, restituendo il risultato. In questo modo il chiamante può eseguire questa operazione da FileObject anziché da un handle.

Sintassi

NTSTATUS FsRtlQueryKernelEaFile(
  [in]            PFILE_OBJECT FileObject,
  [out]           PVOID        ReturnedEaData,
  [in]            ULONG        Length,
  [in]            BOOLEAN      ReturnSingleEntry,
  [in]            PVOID        EaList,
  [in]            ULONG        EaListLength,
  [in, optional]  PULONG       EaIndex,
  [in]            BOOLEAN      RestartScan,
  [out, optional] PULONG       LengthReturned
);

Parametri

[in] FileObject

Puntatore a un FileObject a cui inviare la richiesta QueryEA.

[out] ReturnedEaData

Puntatore a un chiamante fornito FILE_FULL_EA_INFORMATIONbuffer di output strutturato, in cui devono essere restituiti i valori degli attributi estesi.

[in] Length

Specifica la lunghezza, in byte, di ReturnedEaData

[in] ReturnSingleEntry

Specifica se deve essere restituita una sola voce anziché riempire il buffer con il maggior numero possibile di EA.

[in] EaList

Puntatore a un chiamante fornito FILE_GET_EA_INFORMATIONbuffer di input strutturato, che specifica gli attributi estesi su cui eseguire una query. Questo parametro è facoltativo e può essere NULL.

[in] EaListLength

Specifica la lunghezza di EaList, se è stato fornito un elenco EA.

[in, optional] EaIndex

Fornisce l'indice facoltativo di un EA il cui valore deve essere restituito. Se specificato, viene restituito solo l'EA.

[in] RestartScan

Specifica se l'analisi degli EA deve essere riavviata dall'inizio.

[out, optional] LengthReturned

Specifica la quantità di dati validi restituiti nel buffer di ReturnedEaData.

Valore restituito

La routine FsRtlQueryKernelEaFile restituisce uno dei codici di stato:

Codice restituito Descrizione
STATUS_EAS_NOT_SUPPORTED
Il file system non supporta gli attributi estesi.
STATUS_INVALID_DEVICE_REQUEST
La richiesta non è riuscita perché era un dispositivo diretto aperto.
STATUS_INSUFFICIENT_RESOURCES
Impossibile allocare il pacchetto di richiesta di I/O per questa richiesta.
STATUS_SUCCESS
La richiesta ha avuto esito positivo.

Osservazioni

Questa routine FsRtlQueryKernelEaFile presuppone che tutti i buffer passati provenano dalla modalità kernel perché richiede che i buffer di input e output specificati, se specificato, siano indirizzi in modalità kernel. L'operazione avrà esito negativo se viene specificato un indirizzo in modalità utente.

Fabbisogno

Requisito Valore
client minimo supportato Windows 8
server minimo supportato Windows Server 2012
piattaforma di destinazione Finestre
intestazione ntifs.h

Vedere anche

FsRtlSetKernelEaFile

ZwQueryEaFile

ZwSetEaFile