RxFinalizeNetRoot, fonction (fcb.h)
RxFinalizeNetRoot finalise la structure de NET_ROOT donnée. L’appelant doit disposer d’un verrou exclusif sur la table netname associée à l’objet de l’appareil.
Syntaxe
BOOLEAN RxFinalizeNetRoot(
[out] OUT PNET_ROOT ThisNetRoot,
[in] IN BOOLEAN RecursiveFinalize,
[in] IN BOOLEAN ForceFinalize
);
Paramètres
[out] ThisNetRoot
Pointeur vers la structure NET_ROOT à finaliser.
[in] RecursiveFinalize
Valeur indiquant si la finalisation doit être effectuée de manière récursive.
[in] ForceFinalize
Valeur indiquant si la finalisation doit être forcée, quel que soit le nombre de références.
Si ForceFinalize est FALSE, le membre NodeReferenceCount de la structure NET_ROOT pointée par ThisNetRoot doit être 1 pour que le NET_ROOT soit finalisé.
Valeur de retour
RxFinalizeNetRoot retourne TRUE en cas de réussite ou FAUX si la finalisation n’a pas eu lieu : si une finalisation de l’NET_ROOT est déjà en cours, RxFinalizeNetRoot retournera FAUX.
Remarques
La routine RxFinalizeNetRoot n’est normalement pas appelée par les pilotes de mini-redirecteur réseau directement. RDBSS appelle cette routine en interne lorsque le nombre de références sur la NET_ROOT est décrémenté à 1.
Avant d’appeler RxFinalizeNetRoot, un verrou sur la table netname associée à l’objet d’appareil doit être acquis en mode exclusif.
Si le paramètre RecursiveFinalize est TRUE, RxFinalizeNetRoot purge les structures FCB orphelines associées à ce NET_ROOT. Ces bases de données orphelines sont des structures sur lesquelles le membre FcbState a l’indicateur de FCB_STATE_ORPHANED activé.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | fcb.h (include Fcb.h, Mrxfcb.h) |
IRQL | <= APC_LEVEL |