MRxSetEaInfo 例程

RDBSS 调用MRxSetEaInfo 例程来请求网络微型重定向程序在文件系统对象上设置扩展属性信息。

语法

PMRX_CALLDOWN MRxSetEaInfo;

NTSTATUS MRxSetEaInfo(
  _Inout_ PRX_CONTEXT RxContext
)
{ ... }

参数

RxContext [in, out]
指向RX_CONTEXT 结构的指针。 此参数包含请求操作的 IPR。

返回值

MRxSetEaInfo 在成功时返回STATUS_SUCCESS或适当的 NTSTATUS 值,如以下值之一:

返回代码 说明
STATUS_ACCESS_DENIED

调用方对此操作缺乏适当的安全性。

STATUS_EA_TOO_LARGE

传递的扩展属性信息大于远程共享支持的大小。

STATUS_FILE_CLOSED

SRV_OPEN结构已关闭。

STATUS_INSUFFICIENT_RESOURCES

资源不足,无法完成查询。

STATUS_INVALID_PARAMETER

指定的参数无效。

STATUS_NETWORK_ACCESS_DENIED

网络访问被拒绝。 如果要求网络微型重定向程序在只读共享上设置扩展属性,可能会返回此错误。

STATUS_NOT_IMPLEMENTED

未实现所请求的功能,例如在远程页面文件上设置扩展信息。

STATUS_NOT_SUPPORTED

不支持扩展属性。

STATUS_OBJECT_NAME_NOT_FOUND

找不到对象名称。 如果要求网络微型重定向程序在文件上设置扩展属性,但该文件不存在,则可能会返回此错误。

STATUS_OBJECT_PATH_NOT_FOUND

找不到对象路径。 如果传递了 NTFS 流对象且远程文件系统不支持流,则可能会返回此错误。

STATUS_ONLY_IF_CONNECTED

SRV_OPEN结构未连接。

STATUS_REPARSE

需要重新分析才能处理符号链接。

注解

RDBSS 发出对 MRxSetEaInfo 的调用,以响应接收 IRP_MJ_SET_EA 请求。

在调用 MRxSetEaInfo 之前,RDBSS 修改 RxContext 参数指向的 RX_CONTEXT 结构中的以下成员:

Info.Buffer 成员设置为来自 I/O 请求数据包的用户缓冲区。 如果需要,RDBSS 已锁定此缓冲区。

Info.LengthRemaining 成员设置为 IrpSp-Parameters.QueryEa.Length>

要求

目标平台

桌面

标头

Mrx.h (包括 Mrx.h)

另请参阅

MRxIsValidDirectory

MRxQueryDirectory

MRxQueryEaInfo

MRxQueryFileInfo

MRxQueryQuotaInfo

MRxQuerySdInfo

MRxQueryVolumeInfo

MRxSetFileInfo

MRxSetFileInfoAtCleanup

MRxSetQuotaInfo

MRxSetSdInfo

MRxSetVolumeInfo