Passer un tableau de String à une DLL C++ qui devra le remplir
cs_Pyou
Messages postés19Date d'inscriptionvendredi 5 juillet 2002StatutMembreDernière intervention27 juillet 2008
-
25 juil. 2008 à 20:38
cs_Pyou
Messages postés19Date d'inscriptionvendredi 5 juillet 2002StatutMembreDernière intervention27 juillet 2008
-
27 juil. 2008 à 22:41
Bonjour,
Voici mon problème:
J'aimerais appeler une fonction dans une DLL C++ en lui passant un tableau de string, et que la DLL me remplisse ce tableau avec des string.
Pour résumer, voici ce que je voudrais faire en VB:
Dim tableau() as String
'Le tableau est vide
fctDLL( tableau )
'Le tableau a été rempli et contient n strings
MsgBox tableau(0)
MsgBox tableau(1)
...
Après avoir pas mal cherché, j'en ai conclu qu'il fallait utiliser les SAFEARRAY pour faire ça. Par contre, j'ai aussi lu quelque par qu'il fallait utiliser une DLL COM. Quelle est la différence entre une DLL COM et non COM ? La DLL doit-elle être managé pour que cela marche ?
Pour l'instant, je déclare la fonction de la DLL comme suit :
Declare Function fctDLL Lib "laDLL.dll" (ByRef tableau() As String) As Int32
cs_Pyou
Messages postés19Date d'inscriptionvendredi 5 juillet 2002StatutMembreDernière intervention27 juillet 2008 27 juil. 2008 à 22:41
Merci pour ta réponse.
Si je lui passe le pointeur du tableau, que dois-je récupérer du coté DLL ?
un char **, un string *, un SAFEARRAY** ? Et comment faire pour remplir le tableau ?