Freigeben über


FsRtlQueryKernelEaFile-Funktion (ntifs.h)

Die Routine FsRtlQueryKernelEaFile wird verwendet, um eine explizite QueryEA-Anforderung zu erstellen und synchron zu warten, bis sie abgeschlossen ist und das Ergebnis zurückgibt. Dadurch kann der Aufrufer dies von FileObject anstelle eines Handles ausführen.

Syntax

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

Parameter

[in] FileObject

Ein Zeiger auf ein FileObject- zum Senden der QueryEA-Anforderung an.

[out] ReturnedEaData

Ein Zeiger auf einen vom Aufrufer bereitgestellten FILE_FULL_EA_INFORMATION-strukturierten Ausgabepuffer, in dem die erweiterten Attributwerte zurückgegeben werden sollen.

[in] Length

Gibt die Länge von ReturnedEaData- in Bytes an.

[in] ReturnSingleEntry

Gibt an, ob nur ein einzelner Eintrag zurückgegeben werden soll, anstatt den Puffer mit so vielen EAs wie möglich zu füllen.

[in] EaList

Ein Zeiger auf einen vom Aufrufer bereitgestellten FILE_GET_EA_INFORMATION-strukturierten Eingabepuffer, der die erweiterten Attribute angibt, die abgefragt werden sollen. Dieser Parameter ist optional und kann NULL-werden.

[in] EaListLength

Gibt die Länge EaList-an, wenn eine EA-Liste angegeben wurde.

[in, optional] EaIndex

Stellt den optionalen Index eines EA bereit, dessen Wert zurückgegeben werden soll. Wenn angegeben, wird nur dieser EA zurückgegeben.

[in] RestartScan

Gibt an, ob die Überprüfung der EAs von Anfang an neu gestartet werden soll.

[out, optional] LengthReturned

Gibt die Menge gültiger Daten an, die im ReturnedEaData Puffer zurückgegeben werden.

Rückgabewert

Die Routine FsRtlQueryKernelEaFile gibt einen der Statuscodes zurück:

Rückgabecode Beschreibung
STATUS_EAS_NOT_SUPPORTED
Das Dateisystem unterstützt keine erweiterten Attribute.
STATUS_INVALID_DEVICE_REQUEST
Fehler bei der Anforderung, da es sich um ein direktes Gerät handelte.
STATUS_INSUFFICIENT_RESOURCES
Das E/A-Anforderungspaket (IRP) konnte für diese Anforderung nicht zugewiesen werden.
STATUS_SUCCESS
Die Anforderung war erfolgreich.

Bemerkungen

Diese Routine FsRtlQueryKernelEaFile davon aus, dass alle übergebenen Puffer aus dem Kernelmodus stammen, da die angegebenen Eingabe- und Ausgabepuffer, falls angegeben, Kernelmodusadressen sein müssen. Der Vorgang schlägt fehl, wenn eine Benutzermodusadresse angegeben ist.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8
mindestens unterstützte Server- Windows Server 2012
Zielplattform- Fenster
Header- ntifs.h

Siehe auch

FsRtlSetKernelEaFile

ZwQueryEaFile-

ZwSetEaFile-