Bonjour à tous,
J'ai une DLL (qui s'appelle maDLL.dll) et dans laquelle il y a les 4 fonctions suivantes :
La procédure Debut qui prend deux string en arguments et qui ne renvoie rien.
La procédure Fin qui n'a pas d'arguments et qui ne renvoie rien.
La fonction Lecture qui prend deux string en arguments et qui renvoie un string.
La procédure Ecriture qui prend deux string en entrée et qui ne renvoie rien.
Je souhaite créer un script en VBS qui utiliserait ces fonctions.
Mon problème actuel est que je ne parviens pas à faire comprendre au script qu'il faut qu'il se lie avec la DLL. Les fonctions que j'ai créées (InitializationProg, EndInitializationProg, ReadProg et WriteProg) contiennent surement des erreurs mais pour le moment, ce n'est pas grave.
Voici le code source que j'ai écrit (il est exhaustif, donc si vous ne voyez pas quelque chose que vous estimez essentiel, c'est que je ne l'ai vraiment pas mis, et cela pourrait expliquer pourquoi ce script ne fonctionne pas) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 main Sub main() Private GSock As GreatSocket Declare Sub Debut Lib "C:\maDLL.dll" (ByVal firstStringDebut as String, ByVal secondStringDebut as String) Declare Sub Fin Lib "C:\maDLL.dll" () Declare Function Lecture Lib "C:\maDLL.dll" (ByVal firstStringLecture as String, ByVal secondStringLecture as String) as String Declare Sub Ecriture Lib "C:\maDLL.dll" (ByVal firstStringEcriture as String, ByVal secondStringEcriture as String) InitializationProg ReadProg("ok") End Sub Function InitializationProg() Dim App Set GSock = New GreatSocket App = "" GSock.Debut "MASTER", App End Function Function EndInitializationProg() GSock.Fin Set GSock = Nothing End Function Function ReadProg(param) Dim readValue GSock.Lecture param, readValue ReadProg = readValue End Function Function WriteProg(param, valueToWrite) GSock.Ecriture param, valueToWrite End Function
Lorsque j'exécute ce code j'obtiens le message d'erreur suivant :
Erreur de syntaxe sur la ligne "Private Gsock as GreatSocket".
Si je la mets en commentaire, j'obtiens le message d'erreur suivant :
Erreur de syntaxe sur la ligne "Declare Sub Debut..."
J'ai écumé les sites internet pour savoir comment utiliser les fonctions d'une DLL à partir de VBS mais je ne trouve aucune explication claire. Je ne sais pas si ça peut être utile, mais pour info, la DLL est un ActiveX (j'avoue ne pas trop maîtriser ce que ça signifie).
Merci pour votre aide
Partager