Salut,
Bon, et bien, impossible de charger l'adresse d'une fonction "Procédure" d'une dll (Sous Visual 2008), trois heures que je m'arrache les cheveux, c'est une horreur, j'ai tout essayé, et plus étrange encore, GetLastError() me renvois "7F", mon ordinateur serait il devenus schizo ?
A note, que le code ici utilisé, est tiré de la doc : http://melem.ftp-developpez.com/tuto...iques-dlls.pdf
Code DLL :
Code exécutable :
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
18
19
20
21 #include <stdio.h> #include <windows.h> BOOL WINAPI DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpvReserved) { switch(dwReasonForCall) { case DLL_PROCESS_ATTACH: MessageBox(NULL, L"Youuupi", L"Noname", MB_OK); break; case DLL_PROCESS_DETACH: MessageBox(NULL, L"Ahahahah .... tchuus !", L"Noname", MB_OK); break; } return true; } __declspec(dllexport) int AaAaA(void) { return MessageBox(NULL, L"Héhé, ca fonctionne !", L"Noname", MB_OK); }
Toute aide est la bienvenue
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
18
19
20
21
22
23
24 #include <stdio.h> #include <windows.h> typedef int (*Ftest)(void); int main() { HMODULE hDLL = LoadLibrary(L"hookDll.dll"); if (hDLL == NULL) { fprintf(stderr, "La dll n'as pas put etre trouvé.\n"); } else { Ftest pFTestDll = (Ftest)GetProcAddress(hDLL, "AaAaA"); if (pFTestDll == NULL) { // La ca plante ô.o printf("Et bin .... ca plante la, et je suis bien dégouté :D"); } else { pFTestDll(); } } FreeLibrary(hDLL); return 42; }
Partager