Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc
"jean saint jalmes" a écrit dans le message de news:
Bonjour,
Le prototype d'une DLL en C est le suivant :
void API_free(char ** Description);
Je l'ai traduite en VB comme suit :
Private declare sub API_free Lib "API" (Description as long);
Lorsque je l'appelle avec :
Private sub Test
Dim Ptr as long
API_free Ptr End sub
J'obtient l'erreur n° 49 : Convention d'appel de DLL incorrecte.
Pouvez-vous m'aider ?
Hello,
voici la solution: http://rp.developpez.com/vb/tutoriels/dll/#L11
Il te faudra écrire une petite fonction wrapper en C pour encapsuler ta fonction avec une autre utilisant un SAFEARRAY.
L'exemple donné est exactement ce que tu veux, il suffit de changer les noms. Cela suppose bien sur que tu disposes d'un compilateur C sous Windows.
Cordialement
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;
"jean saint jalmes" <jeansaintjalmes@discussions.microsoft.com> a écrit dans
le message de news:A38155C6-7C52-4E2A-B19D-9A899B239454@microsoft.com...
Bonjour,
Le prototype d'une DLL en C est le suivant :
void API_free(char ** Description);
Je l'ai traduite en VB comme suit :
Private declare sub API_free Lib "API" (Description as long);
Lorsque je l'appelle avec :
Private sub Test
Dim Ptr as long
API_free Ptr
End sub
J'obtient l'erreur n° 49 : Convention d'appel de DLL incorrecte.
Pouvez-vous m'aider ?
Hello,
voici la solution:
http://rp.developpez.com/vb/tutoriels/dll/#L11
Il te faudra écrire une petite fonction wrapper en C pour encapsuler
ta fonction avec une autre utilisant un SAFEARRAY.
L'exemple donné est exactement ce que tu veux, il suffit de changer les
noms. Cela suppose bien sur que tu disposes d'un compilateur C sous
Windows.
Cordialement
--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
"jean saint jalmes" a écrit dans le message de news:
Bonjour,
Le prototype d'une DLL en C est le suivant :
void API_free(char ** Description);
Je l'ai traduite en VB comme suit :
Private declare sub API_free Lib "API" (Description as long);
Lorsque je l'appelle avec :
Private sub Test
Dim Ptr as long
API_free Ptr End sub
J'obtient l'erreur n° 49 : Convention d'appel de DLL incorrecte.
Pouvez-vous m'aider ?
Hello,
voici la solution: http://rp.developpez.com/vb/tutoriels/dll/#L11
Il te faudra écrire une petite fonction wrapper en C pour encapsuler ta fonction avec une autre utilisant un SAFEARRAY.
L'exemple donné est exactement ce que tu veux, il suffit de changer les noms. Cela suppose bien sur que tu disposes d'un compilateur C sous Windows.
Cordialement
-- Jean-marc Tester mon serveur (VB6) => http://myjmnhome.dyndns.org "There are only 10 kind of people those who understand binary and those who don't." mailto: remove '_no_spam_' ;