Bonjour,

Je développe sous Delphi 2005, un petit programme qui fait appel à une fonction simple d'addition de deux entier cette fonction est définit dans une DLL codé en C++ dont le code (.h) est le suivant

Code : 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
 
 
#ifdef MATHFUNCSDLL_EXPORTS
#define MATHFUNCSDLL_API __declspec(dllexport) 
#else
#define MATHFUNCSDLL_API __declspec(dllimport) 
#endif
 
namespace MathFuncs
{
    // This class is exported from the MathFuncsDll.dll
    class MyMathFuncs
    {
    public: 
        // Returns a + b
        static MATHFUNCSDLL_API int  Add(int a, int b); 
}
La DLL est généré sous Visual Studion et marche très bien quand l'appel se fait d'un programme C++.

J'essaye de faire l'appel avec un programme Delphi qui le suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 
implementation
 
{$R *.dfm}
function Add(A, B: integer): integer; stdcall; external 'MathTest.dll' name 'Add';
 
 
procedure TForm1.Button1Click(Sender: TObject);
var
  temp : integer;
begin
 
   temp := Add(2,5) ;
end;
A l'exécution j'ai le message d'erreur "Le point d'entrée de procédure Add est introuvable la bibliothèque de lien dynamique MathTest.dll"

Est ce qu'il y aurait quelqu'un qui pourrait m'aider à identifier mon erreur

Merci