RxFinalizeNetRoot 函数 (fcb.h)

RxFinalizeNetRoot 完成给定NET_ROOT结构。 调用方必须在与设备对象关联的 netname 表上具有独占锁。

语法

BOOLEAN RxFinalizeNetRoot(
  [out] OUT PNET_ROOT ThisNetRoot,
  [in]  IN BOOLEAN    RecursiveFinalize,
  [in]  IN BOOLEAN    ForceFinalize
);

参数

[out] ThisNetRoot

指向要完成的NET_ROOT结构的指针。

[in] RecursiveFinalize

指示是否应以递归方式完成最终完成的值。

[in] ForceFinalize

该值指示是否应强制完成,而不考虑引用计数。

如果 ForceFinalizeFALSE,则 ThisNetRoot 指向的NET_ROOT结构的 NodeReferenceCount 成员必须为 1 才能完成NET_ROOT。

返回值

RxFinalizeNetRoot 在成功时返回 TRUE ;如果未完成,则返回 FALSE :如果已完成 NET_ROOT,RxFinalizeNetRoot 将返回 FALSE

注解

网络微型重定向程序驱动程序通常不会直接调用 RxFinalizeNetRoot 例程。 当NET_ROOT上的引用计数减为 1 时,RDBSS 在内部调用此例程。

在调用 RxFinalizeNetRoot 之前,必须在独占模式下获取与设备对象关联的 netname 表上的锁。

如果 RecursiveFinalize 参数为 TRUE,则 RxFinalizeNetRoot 将清除与此NET_ROOT关联的所有孤立 FCB 结构。 这些孤立的 FCB 是 FcbState 成员设置了FCB_STATE_ORPHANED标志的结构。

要求

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

另请参阅

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

NET_ROOT结构