Функция FsRtlSetKernelEaFile (ntifs.h)

Подпрограмма FsRtlQueryKernelEaFile используется для задания, изменения и удаления значений расширенных атрибутов (EA) для файла и синхронного ожидания его завершения, возвращая результат. Он задает IRP_MN_KERNEL дополнительный код, который позволяет этому API задать SecureEAs. Это позволяет вызывающей объекту выполнять это с помощью FileObject, а не дескриптора.

Синтаксис

NTSTATUS FsRtlSetKernelEaFile(
  [in] PFILE_OBJECT FileObject,
  [in] PVOID        EaBuffer,
  [in] ULONG        Length
);

Параметры

[in] FileObject

Указатель на объект FileObject , в который отправляется запрос QueryEA.

[in] EaBuffer

Указатель на предоставленный вызывающим , FILE_FULL_EA_INFORMATION структурированный входной буфер, содержащий значения расширенных атрибутов, которые необходимо задать.

[in] Length

Указывает длину буфера EA.

Возвращаемое значение

Подпрограмма FsRtlSetKernelEaFile получает состояние операции и возвращает один из кодов состояния:

Код возврата Описание
STATUS_EA_LIST_INCONSISTENT
Параметр EaList имеет неверный формат.
STATUS_EAS_NOT_SUPPORTED
Файловая система не поддерживает расширенные атрибуты.
STATUS_INSUFFICIENT_RESOURCES
Пакет запроса ввода-вывода (IRP) не удалось выделить для этого запроса.
STATUS_INTERMIXED_KERNEL_EA_OPERATION
Запрос не может скрестить обычные и ядра EA в одном вызове.
STATUS_INVALID_DEVICE_REQUEST
Запрос завершился ошибкой, так как это было открыто прямое устройство.
STATUS_SUCCESS
Запрос выполнен успешно.

Комментарии

В этой подпрограмме предполагается, что все переданные буферы находятся в режиме ядра.

В одном вызове FsRtlSetKernelEaFile можно задать, изменить и (или) удалить один или несколько ea kernel EA. Обычные ea также можно задать с помощью функции FsRtlSetKernelEaFile . Вы можете удалить EA, указав имя EAName с значением EaValueLength , равным нулю. Вы можете вставить новые, изменить существующие или удалить ea в одном вызове.

Требования

Требование Значение
Минимальная версия клиента Windows 8
Минимальная версия сервера Windows Server 2012
Целевая платформа Windows
Header ntifs.h

См. также раздел

FsRtlQueryKernelEaFile

ZwQueryEaFile

ZwSetEaFile