Appel d'une fonction de DLL mais ...

cs_PaTaTe Messages postés 2126 Date d'inscription mercredi 21 août 2002 Statut Contributeur Dernière intervention 19 février 2021 - 10 oct. 2002 à 14:09
sferrier Messages postés 31 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 11 octobre 2002 - 11 oct. 2002 à 09:03
Je veux utiliser une fonction dans ma DLL. Si avec cette fonction :

Set MADLL = CreateObject("MADLL.MADLL")
MADLL.Fonction ("Paramètre")

cela fonctionne, mais cela necessite un enregistrement un enregistrement préalable de la DLL et comme je ne sais pas enregistrer la DLL au demarrage de mon prog et la dé-enregistrer à sa fermeture, cette methode ne me convient pas.

Une autre methode, plus propre et celle utilisée dans le cas d'appel de fonction Windows qui ne necessite pas d'enregistrement mais ne fonctionne pas. Le code utilisé est :

Public Declare Function Fonction Lib "C:\MADLL.DLL" (ByVal Paramètre As String) As String

Aidez-moi SVP.

Cordialement,

[PaTaTe]

1 réponse

sferrier Messages postés 31 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 11 octobre 2002
11 oct. 2002 à 09:03
Bonjour,

c'est normal puisque les objets COM (ta dll activeX créée par VB en est un) doivent être registrés dans la base de registre (regsvr32 chemin\nomDLL.dll)

si tu veux registrer ta dll avant et la déregistrer après son utilisation (je ne vois pas trop l'interêt !?) , tu peux toujours faire un shell du regsvr32 en mode silent : shell regsvr32 /s chemin\nomdll.dll pour la registrer

et shell regsvr32 /u/s chemin\nomdll.dll pour la déregistrer

Pour créer une DLL non registrable il te faudra la créer en C.

Cordialement
0
Rejoignez-nous