RxFinalizeSrvCall 函数 (fcb.h)

RxFinalizeSrvCall 完成给定的SRV_CALL结构。 调用方必须在与设备对象关联的 netname 表上具有排他锁。

语法

BOOLEAN RxFinalizeSrvCall(
  [out] OUT PSRV_CALL ThisSrvCall,
  [in]  IN BOOLEAN    ForceFinalize
);

参数

[out] ThisSrvCall

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

[in] ForceFinalize

指示是否应强制进行最终化的值,而不考虑引用计数。

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

返回值

RxFinalizeSrvCall 在成功时返回 true TRUE;如果未进行最终定型,则 返回 false

言论

RxFinalizeSrvCall 例程通常不是由网络微型重定向程序驱动程序直接调用的。 当SRV_CALL的引用计数递减为 1 时,RDBSS 会在内部调用此例程。 RDBSS 还会在停止或卸载网络微型重定向程序驱动程序时调用 RxFinalizeSrvCall

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

如果当前执行的进程 ID 与 RDBSS 进程 ID 相同,则会调度延迟的工作线程以销毁SRV_CALL结构。 此工作线程稍后将调用网络微型重定向程序提供的 MRxFinalizeSrvCall 例程,以完成SRV_CALL。 否则,将直接调用 MRxFinalizeSrvCall 例程以完成SRV_CALL。

要求

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

另请参阅

MRxFinalizeSrvCall

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

SRV_CALL结构