Voilà j'ai un problème avec les modules de classes
Je suis dans un projet DLL ActiveX (pour faire une DLL...)
J'ai créé un module de classe en GlobalMultiUse qui me sert de "module", ou dedans y'a plein de fonctions que je veux qu'elle soient publiques (accessibles par l'utilisateur de la DLL) -> ça marche.
Maintenant j'ai créé un autre module de classe en MultiUse, afin que celui ci s'utilise du genre :
clsProcessus.Property
(c'est à dire que ça soit un objet)
Maintenant je voudrais faire appel à une fonction publique du module GlobalMultiUse depuis mon module MultiUse, mais ça ne marche pas,la fonction n'existe pas...
Soit ton second module est lui aussi une DLL alors, il faut rajouter ta première DLL en référence de ton second projet et l'instancier.
Soit ton second module appatient à ta première DLL, alors il te faut seulement l'instancier dans second module.
Je ne sais pas si ça répond à ta question...
Fiko ;-)
Proverbe chinois : Connaître son ignorance est la meilleur part de la connaissance./FONT>
En fait quand tu compiles ta DLL et que tu l'utilises dans un projet en tant que référence, tu l'instancies indeirectement.
C'est pourquoi, il faut l'instancier manuelement dans le cas où elle n'est pas compilée
Fiko ;-)
Proverbe chinois : Connaître son ignorance est la meilleur part de la connaissance./FONT>
Effectivement, les 2 modules sont dans la meme DLL, donc il fallait instancier le premier module dans le second.
Mais je ne comprend pas pourquoi il faut le faire, car dans le projet .EXE qui utilise la DLL, pas besoin d'instancier la classe GlobalMultiUse, les fonctions sont comme si elles étaient dans un module standard (ce que je veux).
Alors pourquoi dans un module de la DLL, il faut instancier (alors qu'il n'est pas nécessaire de le faire dans le .EXE)
(ce que je voulais à la base c'était juste avoir un module qui contient des fonctions qui seront publiques pour TOUTES et TOUS, quelque soit le projet... , mais la elles sont pas publiques à l'interieur meme du projet DLL)