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 会在内部调用此例程。 此 IRP 通常由 RDBSS 接收,以响应请求对网络共享执行文件创建操作的用户模式应用程序。 另一个内核驱动程序也可以发出此类 IRP。
在调用 RxCreateVNetRoot 之前,必须在独占模式下获取与 RxContext 参数的设备对象成员关联的名称表上的锁。
RxCreateVNetRoot 基于RX_CONTEXT的参数在V_NET_ROOT结构上设置各种安全上下文参数。 这些参数包括: LogonId、 SessionId、 pUserName、 pUserDomainName、 pPassword 和 Flags。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | fcb.h (包括 Rxcontx.h、Mrxfcb.h、Prefix.h、Struchdr.h、Fcb.h) |
IRQL | <= APC_LEVEL |