DLL et C++

DLL et C++ - VB/VBA/VBS - Programmation

Marsh Posté le 12-07-2011 à 15:25:04    

Bonjour,
J'ai créé un DLL C++ qui contient la fonction suivante :
 

Code :
  1. double __stdcall AdditionTableau_5(double * table1, double * table2, double * RetourTableau) {
  2. int i;
  3. for (i=0;i<5;i++) {
  4.  RetourTableau[i] = table1[i] + table2[i];
  5. }
  6. return 1.0;
  7. }


 
Dans mon code VBA, je fais :
 

Code :
  1. Declare Function AdditionTableau_5 _
  2. Lib "D:\Documents and Settings\stage\Bureau\CPP\Test_DLL7\Debug\Test_DLL7.dll" (ByRef table1() As Double, ByRef table2() As Double, ByRef RetourTableau() As Double) As Double


 
 

Code :
  1. Sub Fonction_Test3()
  2.    
  3.    
  4.     Dim Retour_F As Double
  5.     Dim table1(1 To 5) As Double
  6.     Dim table2(1 To 5) As Double
  7.     Dim RetourTableau(1 To 5) As Double
  8.    
  9.     table1(1) = 1
  10.     table1(2) = 2
  11.     table1(3) = 3
  12.     table1(4) = 4
  13.     table1(5) = 5
  14.    
  15.     table2(1) = 1
  16.     table2(2) = 2
  17.     table2(3) = 3
  18.     table2(4) = 4
  19.     table2(5) = 5
  20.    
  21.     Retour_F = AdditionTableau_5(table1, table2, RetourTableau)
  22.     MsgBox (Retour_F)
  23.        
  24. End Sub


 
Quand j'essaie de voir ce qu'il y a dans RetourTableau, ça m'affiche un message d'erreur l'indice n'appartient pas à la sélection.
Le tableau n'est pas non plus rempli lorsque je remplace :

Code :
  1. Retour_F = AdditionTableau_5(table1, table2, RetourTableau)


 
par :
 

Code :
  1. Retour_F = AdditionTableau_5(table1(1), table2(1), RetourTableau(1))


 
Ca me met comme message Incompatibilité de type : tableau ou type défini par l'utilisateur attendu
 
Comment faire pour passer des tableaux en paramètre?
 
Merci

Reply

Marsh Posté le 12-07-2011 à 15:25:04   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed