RxCreateVNetRoot 函数 (fcb.h)

RxCreateVNetRoot 分配并初始化NET_ROOT结构,并将名称插入关联设备对象的 net name 表中。

语法

PV_NET_ROOT RxCreateVNetRoot(
  [in] IN PRX_CONTEXT       RxContext,
  [in] IN PNET_ROOT         NetRoot,
  [in] IN PUNICODE_STRING   CanonicalName,
  [in] IN PUNICODE_STRING   LocalNetRootName,
  [in] IN PUNICODE_STRING   FilePath,
  [in] IN PRX_CONNECTION_ID RxConnectionId
);

参数

[in] RxContext

指向 RDBSS RX_CONTEXT的指针,其中包含描述创建作的 IRP。

[in] NetRoot

指向关联NET_ROOT结构的指针。

[in] CanonicalName

指向要插入到名称表中的规范名称的指针。

[in] LocalNetRootName

指向没有前缀名称的本地NET_ROOT名称的指针。

[in] FilePath

指向文件路径名的指针。 此参数当前未使用,可以 NULL

[in] RxConnectionId

指向要与要插入前缀名称表中的名称关联的连接 ID 的指针。 此参数可以 NULL 在这种情况下,不会将连接 ID 与名称表中插入的名称相关联。

返回值

RxCreateVNetRoot 在成功时返回指向新创建的V_NET_ROOT数据结构的指针或失败时 NULL 指针。

言论

RxCreateVNetRoot 例程通常不是由网络微型重定向程序驱动程序直接调用的。 当收到IRP_MJ_CREATE的 I/O 请求数据包,并且需要创建V_NET_ROOT时,RDBSS 会在内部调用此例程。 RDBSS 通常会接收此 IRP,以响应请求在网络共享上执行文件创建作的用户模式应用程序。 另一个内核驱动程序也可以发出此类 IRP。

在调用 RxCreateVNetRoot之前,必须以独占模式获取与 RxContext 参数的设备对象成员关联的名称表上的锁。

RxCreateVNetRoot 基于RX_CONTEXT中的参数在V_NET_ROOT结构上设置各种安全上下文参数。 这些参数包括:LogonIdSessionIdpUserNamepUserDomainNamepPassword标志

要求

要求 价值
目标平台 桌面
标头 fcb.h (包括 Rxcontx.h、Mrxfcb.h、Prefix.h、Struchdr.h、Fcb.h)
IRQL <= APC_LEVEL

另请参阅

RX_CONTEXT

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxInferFileType

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

NET_ROOT结构

V_NET_ROOT结构