Salut a tout le monde,
une fois de plus je me remet a vous, car je n´arrive pas a trouver la solution, je m´explique j´ai une fonction ecrite dans une dll ecrite en C qui retourne une chaine de caracteres, la voici :
et lorsque je veux la recuperer comme ceci du coté de delphi, je recois qu´une chaine non comprehensible voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #define DllExport __declspec(dllexport) char DllExport * copieur(const char *originale) { char *copie=NULL; copie=malloc((strlen(originale)+1)*sizeof(char)); strcpy(copie,originale); return copie; }
merci d´avance pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 DLLFunc : function(pass: PChar): PChar; procedure TForm1.cxButton3Click(Sender: TObject); var iResult: Integer; s : AnsiChar; Buffer : PChar; test : PChar; test2 : AnsiString; begin getmem(buffer, 20); test := PChar('qwert'); Buffer := DLLFunc(test); test2 := StrPas(DLLFunc(test)); end;
Eric
Partager