Fonction RxFinalizeSrvCall (fcb.h)
RxFinalizeSrvCall finalise la structure SRV_CALL donnée. L’appelant doit disposer d’un verrou exclusif sur la table netname associé à l’objet d’appareil.
Syntaxe
BOOLEAN RxFinalizeSrvCall(
[out] OUT PSRV_CALL ThisSrvCall,
[in] IN BOOLEAN ForceFinalize
);
Paramètres
[out] ThisSrvCall
Pointeur vers la structure SRV_CALL à finaliser.
[in] ForceFinalize
Valeur indiquant si la finalisation doit être forcée, quel que soit le nombre de références.
Si ForceFinalize a la valeur FALSE, le membre NodeReferenceCount de la structure SRV_CALL pointée par ThisSrvCall doit être 1 pour que le SRV_CALL soit finalisé.
Valeur retournée
RxFinalizeSrvCall retourne TRUE à la réussite ou FALSE si la finalisation n’a pas eu lieu :
Remarques
La routine RxFinalizeSrvCall n’est normalement pas appelée directement par les pilotes de mini-redirecteur réseau. RDBSS appelle cette routine en interne lorsque le nombre de références sur le SRV_CALL est décrémenté à 1. RDBSS appelle également RxFinalizeSrvCall lorsque le pilote de mini-redirecteur réseau est arrêté ou déchargé.
Avant d’appeler RxFinalizeSrvCall, un verrou sur la table netname associée à l’objet d’appareil doit être acquis en mode exclusif.
Si l’ID de processus en cours d’exécution est le même que l’ID de processus RDBSS, un thread de travail différé est distribué pour détruire la structure SRV_CALL. Ce thread de travail appellera ultérieurement la routine MRxFinalizeSrvCall fournie par le mini-redirecteur réseau pour finaliser le SRV_CALL. Sinon, la routine MRxFinalizeSrvCall sera appelée directement pour finaliser le SRV_CALL.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | fcb.h (inclure Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |