Pour ce faire, j'ai lu msdn, codes-sources et j'en suis arrivé à ceci:
[FONCTION DLL]
extern "C" __declspec(dllexport) int tests(int test)
{
return test;
}
[EXE]
void loadfunc(void)
{
int testa;
HINSTANCE mdll;
mdll=LoadLibrary("ma_dll.dll");
typedef int (__stdcall* FUNCPROC)(int test);
FUNCPROC mfunc;
mfunc = (FUNCPROC)GetProcAddress((HINSTANCE)mdll,"tests");
testa=((mfunc)(5));
printf("Test: %d\n",testa);
}
Le printf fonctionne bien, mais je reçois une erreur fatal quand j'execute l'exe.
Quand je debug l'erreur, c'est toujours à l'offset 00000005 que ça foire ..
L'exe contient QUE l'appel de la dll, et l'erreur fatal n'apparait plus
quand je n'uttilise aucun argument dans la fonction de dll
J'ai vraiment tout essayé depuis 2 jours, je ne vois pas qu'est ce qui pourrai faire planter ce foutu code ..