heu, une dll crée en vb6 n'est pas une "vraie" dll, il s'agit d'un activeX, donc il faut référence la dll, et l'utiliser par une instance de classe ! (pas de fonction Declare donc)
Alors j'ai une petite parade pour ce problème, j'ai remplacé mon LINK.EXE par un proxylinker qui transmet des paramètres supplémentaires lors de la compilation.
Ce qui fait que j'ai un fichier .def, et que le nouveau LINK.EXE fait appel au vrai LINK.EXE avec en +:
/DEF:"E:\.....\.....\....\Tornado.def" /DLL
En tout cas, cela marche très très bien, et je ne pense pas que cela soit à l'origine du pb car ce n'est pas la première dll que je compile.
Cela évite en tout cas, d'avoir à ajouter en référence le nom de la classe comme tu dis.
bah quel est l'intérêt d'enlever la réf à la dll vu que celle-ci ne sera chargée que lorsque tu en aura besoin, et surtout, ca évite de l'éviter lors du setup !
Je ne vois vraiment pas comment tu peux appeler une fonction contenue dans une dll activeX avec un declare !
De plus, comment tu obtiens ton fichier .def ??? tu ne confondrais pas vb6 avec vc6 par hasard ???