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