GetProcAddress schlägt fehl
-
Hallo,
Ich versuche in meinem Projekt Funktionen aus einer von mir selbst geschriebenen Dll zu verwenden. Die Funktionen sind in der Dll so deklariert:
#ifdef TESTD_EXPORTS #define TESTD_API __declspec(dllexport) #else #define TESTD_API __declspec(dllimport) #endif TESTD_API int fnTestd(void);
Und hier die (noch) leere Funktion in der DLL:
TESTD_API int fnTestd(void) { return 0; }
Wenn ich jetzt versuche,die Funktion fnTestd mit LoadLibrary und GetProcAddress aus der DLL in meinem Projekt zu laden, liefert GetProcAddress immer NULL zurück
Hier der Code aus der EXE:
typedef int (fnTestd)(void); HINSTANCE hi; hi = ::LoadLibrary(Dir.c_str()); // Liefert gültiges Handle fnTestd *pTest; pTest = (fnTestd * ) ::GetProcAddress(hi,"fnTestd"); //pTest ist immer NULL
Weiss jemand, was da falsch ist??
-
Schau doch mal nach (z.B. mit Depends), unter welchem Namen die Funktion in der DLL exportiert wird.
-
Danke für den Tipp! hat Funktioniert, der Export-Name war ein ganz anderer