PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → DéchargeWDL
DéchargeWDL
Iniciado por ricil, 02,may. 2019 11:58 - 1 respuesta
Miembro registrado
223 mensajes
Publicado el 02,mayo 2019 - 11:58
Bonjour,

dans un projet nous utilisons des chargements/déchargements de Bibliothèques (fichier .WDL)

dans une des Bibliothèques j'utilise le principe énoncé dans cette vidéo de PcSoft :


c'est à dire une classe qui donne à un manager une procédure pour l'instancier

Extrait de l'exemple : code de la classe :
// Enregistrement de la classe auprès du manager (factory)
LOCAL
p est une Procedure = pCreeExtractDocX
PROCEDURE INTERNE pCreeExtractDocX()
RENVOYER allouer un cExtractDOCX()
FIN
cExtractManager::AjouteExtension(EXTENSION,LIBELLE,p)


sauf que ce principe empêche la bibliothèque d'être déchargée !
Windev plante en précisant qu'un ou plusieurs objets est encore en cours d'utilisation.

Problème dans le projet global je ne sais pas quand va arriver le déchargement, impossible de libérer à l'avance !

comment faire pour déchargée proprement ?
Miembro registrado
223 mensajes
Publicado el 02,mayo 2019 - 13:17
solution : après l'utilisation du manager il faut mettre la variable contenant le procédure à NULL
dans l'exemple p=Null

AVANT
// Enregistrement de la classe auprès du manager (factory)
LOCAL
p est une Procedure = pCreeExtractDocX
PROCEDURE INTERNE pCreeExtractDocX()
RENVOYER allouer un cExtractDOCX()
FIN
cExtractManager::AjouteExtension(EXTENSION,LIBELLE,p)


APRES
// Enregistrement de la classe auprès du manager (factory)
LOCAL
p est une Procedure = pCreeExtractDocX
PROCEDURE INTERNE pCreeExtractDocX()
RENVOYER allouer un cExtractDOCX()
FIN
cExtractManager::AjouteExtension(EXTENSION,LIBELLE,p)
p=Null