zwSetEaFile 函数 (ntifs.h)

ZwSetEaFile 将 (与具有指定 CA 的文件关联的 EA) 替换扩展属性。

语法

NTSTATUS ZwSetEaFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PVOID            Buffer,
  [in]  ULONG            Length
);

参数

[in] FileHandle

要对其执行操作的文件的句柄。

[out] IoStatusBlock

指向 IO_STATUS_BLOCK 结构的指针,该结构接收最终完成状态和有关所请求操作的其他信息。

[in] Buffer

指向调用方提供的 FILE_FULL_EA_INFORMATION结构化输入缓冲区的指针,该缓冲区包含将替换当前与该文件关联的 EA 的新 EA。

[in] Length

Buffer 参数指向的缓冲区的长度(以字节为单位)。

返回值

ZwSetEaFile 返回STATUS_SUCCESS或相应的 NTSTATUS 值,如下所示:

返回值 说明
STATUS_EA_LIST_INCONSISTENT Buffer 指向的 EA 列表的格式不正确。 这是错误代码。
STATUS_INSUFFICIENT_RESOURCES 没有足够的内存可用于完成操作。 这是错误代码。

注解

ZwSetEaFile 将与 FileHandle 关联的 EA 替换为 Buffer 指向的缓冲区中的 EA。 缓冲区中的 CA 必须格式化为 一系列FILE_FULL_EA_INFORMATION 结构。 在替换现有 EA 之前,ZwSetEaFile 首先检查 EA 值的缓冲区是否有效

要求

要求
最低受支持的客户端 Windows 2000
目标平台 通用
标头 ntifs.h (包括 FltKernel.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDI (storport) PowerIrpDDis (wdm)

另请参阅

FILE_FULL_EA_INFORMATION

IoCheckEaBufferValidity

ZwQueryEaFile