ouais je sais �a peut para�tre con, et mon erreur doit l'�tre aussi mais l� je ne vois plus rien du tout et donc, j'en appel � votre bon coeur....mais surtout � votre comp�tence en C++ !
environnement: Windows XP PRo SP2, VSC++6, Codage d'une DLL
alors voil�:
la fonction suivante re�oit plusieurs param�tres. Les 2 derniers sont des tableaux dont la taille peut varier d'un appel � l'autre..bref ces deux tableaux sont vides et doivent �tre remplis par cette fonction.
Code C++ : 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 double CalcFilmCont(char *fetude, usint nind, double *vspots, int nbspots, char *dcbl, double *contacts, int *poids) { //Déclarations double *Pbci; //initialisation Pbci = new double[nind]; contacts = new double[nind]; // traitement qui rempli Pbci //je récupère les valeurs de Pbci dans contacts par la boucle suivante for(i=0;i<nind;i++) { contacts[i] = Pbci[i]; } return 0; }
Cette fonction est appel�e par le point d'entr�e suivant de ma DLL:
Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 extern "C" __declspec(dllexport) double calc_filmcontact(char *fetude, usint nind, double *vspots, int nbspots, char *dcbl, double *contacts, int *poids) { double ret=0; AFX_MANAGE_STATE(AfxGetStaticModuleState()); TRY { ret = CalcFilmCont(fetude,nind,vspots,nbspots,dcbl, contacts,poids); } END_TRY return ret; }
Et le probl�me c'est qu'une fois de retour dans le programme appelant, je n'ai absolument rien dans le tableau contacts si ce n'est de jolis petits z�ros .....
merci de votre aide � tous,
Ben
Partager