Bonjour,
J'ai récupéré une DLL écrite en C++ qui met à ma disposition une fonction qui, à partir d'un chaine de caractères, mouline et m'en ressort une autre.
J'aimerais l'utiliser (en codant sous delphi).
Je la charge donc de manière statique (pas gênant dans mon cas).
La fonction que j'appelle est définie comme suit en C++ :
bool CalculCATChecksum(char* sCATPayLoad, char* sCATCheckSum);
Elle demande donc, en entrée, un pointeur sur une chaine de caractères, et une autre qui sert en réalité de sortie.
Je tente donc de lui passer ma chaine de caractères définie à partir du pascal en faisant un PChar, que je passe à la fonction. De même pour le 2ème argument, qui est la sortie.
L'appel de la fonction dans la DLL se passe mal : j'ai droit à une erreur de violation d'accès mémoire... (EAccessViolation) :
'Violation d'accès à l'adresse 10001405 dans le module 'maDLL.dll'. Ecriture de l'adresse 004572AC'
J'ai essayer de lui passer un pointeur sur un String que j'ai créé moi même : même résultat.
Auriez vous une idée de la méthode à utiliser pour résoudre ce problème?
Merci d'avance
Partager