|
| 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 :
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
LOCAL p est une Procedure = pCreeExtractDocX PROCEDURE INTERNE pCreeExtractDocX() RENVOYER allouer un cExtractDOCX() FIN cExtractManager::AjouteExtension(EXTENSION,LIBELLE,p)
APRES
LOCAL p est une Procedure = pCreeExtractDocX PROCEDURE INTERNE pCreeExtractDocX() RENVOYER allouer un cExtractDOCX() FIN cExtractManager::AjouteExtension(EXTENSION,LIBELLE,p) p=Null
|
| |
| |
| | | |
|
| | | | |
| | |
|