Comment créer une dll sans classe

iToons Messages postés 2 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 9 juin 2003 - 9 juin 2003 à 02:31
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 9 juin 2003 à 10:19
Bonjour,

J'aimerai créer une dll (en VB6) avec un certain nombre de fonction utilisables par un exe (toujours VB6) qui utiliserait des des déclarations du type 'Public Declare Function Additionne Lib "helloWorld.dll" Alias "main" (ByVal a As Long, ByVal b As Long) As Long'.

Est-ce possible sans enregistrer la dll avec regsvr32 ?

Merci.

Marc
:)

2 réponses

iToons Messages postés 2 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 9 juin 2003
9 juin 2003 à 02:42
J'oubliai : j'ai essayé avec les codes suivants :

'*** <DANS LA DLL> ***'
'*** <module1.bas> ***'
Public function stupidAddition (ByVal a As Long, ByVal b As Long) As Long
stupidaddition = a - (0 - b)
End function
'*** </module1.bas> ***'
'*** </DANS LA DLL> ***'


'*** <DANS L'EXECUTABLE> ***'
'*** <module1.bas> ***'
Public Declare Function Additionne Lib "helloWorld.dll" Alias "stupidAddition" (ByVal a As Long, ByVal b As Long) As Long
'*** </module1.bas> ***'

'*** <form1.frm> ***'
Private Sub Command1_Click()
Call MsgBox(Additionne(1, 3))
End Sub
'*** </form1.frm> ***'
'*** </DANS L'EXECUTABLE> ***'

Je compile ma dll en helloWorld.dll (les bonne vieilles habitudes... ;) , puis je lance le projet exécutable en pas à pas... "point d'entrée 'stupidAddition' introuvable dans helloWorld.dll !"

Merci de votre aide !
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
9 juin 2003 à 10:19
salut

bon deja :
public declare ... c'est pas pour des dll crée avec VB c pour des dll faitent en C/C++

ensuite :
VB crée des dll ActiveX donc il faut les enregistrer avec regsvr32 et de plus il faut ajouter la référence à ton projet exe ou par createobject ou getobject

enfin dasn une dll seule les modules de classes sont public

conclusion :
tu ne peux pas faire une dll non ActiveX avec VB donc pas "declare"

voila

ShareVB
0
Rejoignez-nous