Bonjour,

J'ai programmé un exemple de DLL (A.dll) en C++. J'ai définit une fonction dans cette DLL comme suit

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
//Fichier A.h
#define ADLL_API __declspec(dllexport) 
ADLL_API long __cdecl  run(void);
J'appelle la fonction run dans un programme exécutable comme ceci
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
 
HINSTANCE _a;
	_a = LoadLibrary(L"A.dll");
 
	if (_a == NULL)
	{
		std::cout << "DLL not loaded" << std::endl;
		system("pause");
		return 0;
	}
 
 
	// Call to run function in DLL A
	typedef long (*runFunction)();
	runFunction run = (runFunction)GetProcAddress(_a, "run");
	if (!run)
	{
		std::cout << "Function not loaded" << std::endl;
		system("pause");
		return 0;
	}
	run();
Le test que j'effectue pour l'appel de la fonction "run" m’indique qu'elle n'est pas chargé alors que la DLL A.dll est bien chargé.
Si quelqu'un a identifié la source de l'erreur qui ne me permet pas d'appeler la fonction run

Merci