Ajouter un commentaire

fredericmazue

Quote:

j'utilise une dll ecrite en C++,dans delphi,
mais toujour rien erreur de compilation ;

Normal. Tu as deux problèmes. L'un à la compilation, l'autre à l'exécution.

1) A la compilation. Ca ne peut pas aller parce que les compilateurs C++ décorent les noms de fonctions en y ajoutant des lettres et des nombres.
Pour éviter ça lorsqu'on écrit une librairie C++ on fait précéder les déclarations des noms de fonctions de -- extern "C" --. afin que le nom reste intègre.
Je ne vois pas d'extern "C" dans le code C++, donc les noms des fonctions sont décorés, donc Pascal/Delphi ne peut pas les trouver. Il faudrait modifier et recompiler le code C++, et en faisant aussi bien attention aux options de compilations C++.

2) A l'exécution. Sauf si j'ai mal vu, ton code Delphi ne signale nulle part que les fonctions C++ doivent être appelées avec le protocole d'appel C++. Elles seront donc appelées avec le protocole Pascal(Delphi), il y aurait une erreur de pile au premier appel et ça va planter.
Consulte ta doc Delphi. Tu y verras comment spécifier dans le code source Delphi un protocole spécifique pour une appel de fonction C/C++.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
     J   CCC  X   X  EEEE   GGG  
J C X X E G
J C X EEE G GG
J J C X X E G G
JJJ CCC X X EEEE GGG