Функция RxFinalizeSrvCall (fcb.h)

RxFinalizeSrvCall завершает указанную структуру SRV_CALL. Вызывающий объект должен иметь монопольную блокировку в таблице netname, связанной с объектом устройства.

Синтаксис

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

Параметры

[out] ThisSrvCall

Указатель на структуру SRV_CALL для завершения.

[in] ForceFinalize

Значение, указывающее, следует ли принудительно завершать, независимо от количества ссылок.

Если параметр ForceFinalize имеет значение FALSE, элемент NodeReferenceCount структуры SRV_CALL, на которую указывает ThisSrvCall , должен иметь значение 1 для завершения SRV_CALL.

Возвращаемое значение

RxFinalizeSrvCall возвращает значение TRUE при успешном выполнении или FALSE , если завершение не произошло:

Комментарии

Подпрограмма RxFinalizeSrvCall обычно не вызывается драйверами сетевого мини-перенаправления напрямую. RDBSS вызывает эту подпрограмму внутренне, когда количество ссылок на SRV_CALL уменьшается до 1. RDBSS также вызывает RxFinalizeSrvCall при остановке или выгрузке драйвера сетевого мини-перенаправления.

Перед вызовом RxFinalizeSrvCall блокировка таблицы netname, связанной с объектом устройства, должна быть получена в монопольном режиме.

Если текущий идентификатор выполняемого процесса совпадает с идентификатором процесса RDBSS, будет отправлен отложенный рабочий поток для уничтожения структуры SRV_CALL. Позже этот рабочий поток вызовет подпрограмму MRxFinalizeSrvCall , предоставляемую сетевым мини-перенаправлением, для завершения SRV_CALL. В противном случае для завершения SRV_CALL будет вызвана подпрограмма MRxFinalizeSrvCall .

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть 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