Mindiell
Messages postés558Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention 5 septembre 2007
-
17 juil. 2003 à 16:35
Mindiell
Messages postés558Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention 5 septembre 2007
-
17 juil. 2003 à 17:52
Salut !
je ne trouve vraiment rien sur le net, peut-etre pourrez-vous m'aider !
J'ai cree une DLL toute con avec 2 fonctions :
int test (void);
char* test2 (void);
La premiere retourne 4 et la deuxieme doit retourner "coucou"... Pas tres complique a priori, mais impossible de retourner le char* en String pour VB. J'ai bien recuperer un Long, mais comment en faire une chaine de caracteres pour VB ?
Private Declare Function test2 () As String ===> Plantage
Private Declare Function test2 () As Long ===> Recuperation du pointeur ok...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 juil. 2003 à 17:09
ben oui un String VB n'est pas un char[] sinon irait aussi vite que le C.
tu dois faire de l'alloc memoire, un exemple:
ajoute 2 nombres passes sous forme de String VB, le resultat est mis dans String a. Retourne != 0 si erreur.
Si tu veux retourner le String directement, tu retournes le resultat de (pointeur) SysAllocStringByteLen.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 juil. 2003 à 17:12
PRECISION IMPORTANTE !!!
mon exemple est pour une dll specialisee pour VB, donc les Declare ne doivent pas mettre Byval car tu prends bien un ptr BSTR*.
BruNews, ciao...