Hello,
suite à mon post sur les dll et les soucis de compil et d'export, voilà qu'un autre soucis, ou plutot quelque chose de plus profond me perturbe :
J'ai donc un projet, conséquent, que je veux découper en dlls. Seulement certaines partie du code, disons des ensembles de classes qui communiquent entre elles, pour les externaliser du projet.
Seulement, comme ces classes, une fois externalisés dans un autre projet, étaient malgré tout bien imbriquées dans celui de base et donc les dépendances sont bien là : pour compiler mes dlls, je dois linker avec mon projet de base en lib (ce qui est logique jusque là). J'ai donc mon exe compilé en exe et en lib.
Vient ensuite le point clé : mon exe, lorsqu'il charge ladite dll, charge aussi ses dépendances (celles de la dll), qui sont donc ma lib de base...
Ainsi, mon exe créé une instance des classes de la dll, qui elle meme créé des instances de classes de la lib ... donc au final le code de l'exe est instancié deux fois !
Je pense que le probleme est donc évident ... L'idée de base pour remédier à ça est de faire en sorte que la dll n'ai aucune dépendance pour éviter d'avoir à utiliser mon projet en lib... Mais c'est bcp de boulot !
donc si vous avez des idées... je suis toute ouïe :-)
Merci.
Partager