Utiliser une dll C# dans vb6

tony54500
Messages postés
2
Date d'inscription
mercredi 20 décembre 2006
Statut
Membre
Dernière intervention
3 mai 2007
- 3 mai 2007 à 11:28
ShareVB
Messages postés
2676
Date d'inscription
vendredi 28 juin 2002
Statut
Membre
Dernière intervention
13 janvier 2016
- 24 mai 2007 à 20:43
Bonjour,

Je souhaiterai pouvoir utiliser une dll développée en C# dans mon code VB. J'ai vu de nombreux tuto sur le sujet mais reste coincé à un point précis.

Je génère donc ma dll.
Ensuite, je cree un nom fort pour celles-ci : sn -k Nom.dll
Je cree le fichier tlb que je referencerai dans vb6 : tlbexp Nom.dll /out:tlbexp.tlb

J'enregistre ensuite dans le CM via RegAsm : regasm /tlb:Nom.tlb Nom.dll

Et j'installe dans le GAC : gacutil /i Nom.dll

Ensuite, je référence mon fichier tlb depuis vb6.

Je peux ensuite voir toutes les classes de ma dll depuis le code vb sans aucun problème.
Par contre, je n'ai accès à aucun membre de chaque classe (ni les méthodes, ni les attributs, qu'ils soient publics ou non)

Si quelqu'un pouvait m'aider sur le sujet, ca m'intéresserait beaucoup

Merci

2 réponses

sebmafate
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
3 mai 2007 à 14:51
ca devrait pouvoir t'aider : http://msdn2.microsoft.com/fr-fr/library/zsfww439(VS.80).aspx

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
0
ShareVB
Messages postés
2676
Date d'inscription
vendredi 28 juin 2002
Statut
Membre
Dernière intervention
13 janvier 2016
25
24 mai 2007 à 20:43
salut,

si c'est VS2005 :
-> il faut mettre "COM visible" et dans Assembly information, il y a aussi register for COM...(ou inversement)
-> avoir les classes et membres en public
-> ajouter l'attrib [ClassInterface(machin.AutoDual)] et event [COmVisible(true)]...

ca c'est pour le plus simple...après on peut le faire explicit...mais c'est plus compliqué...

ShareVB
0