MRxCollapseOpen 例程

RDBSS 调用 MRxCollapseOpen 例程,请求网络微型重定向程序将打开的文件系统请求折叠到现有的SRV_OPEN结构上。

语法

PMRX_CALLDOWN MRxCollapseOpen;

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

参数

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

返回值

MRxCollapseOpen 在成功时返回STATUS_SUCCESS或相应的 NTSTATUS 值,如下所示:

返回代码 说明
STATUS_INSUFFICIENT_RESOURCES

资源不足,无法完成操作。

注解

RDBSS 调用 MRxCollapseOpen 以在本地折叠SRV_OPEN结构。 咨询网络微型重定向程序以确定是否可能发生崩溃,因此没有理由调用网络微型重定向器两次。 如果网络微型重定向程序决定折叠SRV_OPEN结构,它将这样做并传递回可返回的状态。 STATUS_SUCCESS 的返回值是终止返回值。 不同的返回值(例如,STATUS_MORE_PROCESSING_REQUIRED)被视为非终止返回值。

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

pRelevantSrvOpen 设置为折叠SRV_OPEN结构。

Create.pSrvCall 设置为与SRV_OPEN关联的SRV_CALL结构。

如果网络微型重定向程序决定折叠SRV_OPEN结构,则必须将RX_CONTEXT结构的 SrvOpen 成员设置为折叠SRV_OPEN结构。

要求

目标平台

桌面

标头

Mrx.h (包括 Mrx.h)

另请参阅

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxExtendForNonCache

MRxFlush

MRxForceClosed

MRxIsLockRealizable

MRxShouldTryToCollapseThisOpen

MRxTruncate

MRxZeroExtend