Problème de chargement de DLL [Résolu]

Signaler
Messages postés
2
Date d'inscription
jeudi 8 mai 2003
Statut
Membre
Dernière intervention
18 novembre 2005
-
Messages postés
2
Date d'inscription
jeudi 8 mai 2003
Statut
Membre
Dernière intervention
18 novembre 2005
-
Bonjour,

Je travaille sur un programme multi-thread. Je dois charger une dll. Que l'on soit en mode Debug ou Release, le problème est identique. Si je lance mon application par visual (Ctrl+F5), pas de problème. Par contre, si je double clique sur le fichier exe directement, le handle renvoyé est NULL...

voici le bout de code:
...........................................................................................
hDllInstance = AfxLoadLibrary("./KVBPlug.dll");
if (hDllInstance == NULL)
{
AfxMessageBox("Erreur d'ouverture de KVBPlug.dll",MB_ICONQUESTION,MB_APPLMODAL);
SendMessage(WM_CLOSE);
return TRUE;
}
......................................................................................

Voila une partie de l'aide de msdn france:


LoadLibrary essaie de retrouver la DLL en effectuant la même séquence de recherche que celle suivie pour la liaison implicite. Si le système ne trouve pas la DLL ou si la fonction de point d'entrée retourne la valeur FALSE, LoadLibrary retourne NULL. Si l'appel à LoadLibrary spécifie un module de DLL déjà mappé dans l'espace d'adressage du processus appelant, la fonction retourne simplement un handle de la DLL et incrémente le décompte de référence du module.


Je n'ai pas accès au code de la dll.
J'ai déja essayé de placé la dll dans le system32, dans le même répertoire... rien ne change.

Merci d'avance.

Debut Christophe

[mailto:debut.christophe@skynet.be debut.christophe@skynet.be]

2 réponses

Messages postés
2
Date d'inscription
jeudi 8 mai 2003
Statut
Membre
Dernière intervention
18 novembre 2005

j'ai essayé plusieurs solution:

hDllInstance = AfxLoadLibrary("./KVBPlug.dll");
hDllInstance = AfxLoadLibrary("KVBPlug.dll");
hDllInstance = AfxLoadLibrary("C:\\....\\....\\KVBPlug.dll");

en plaçant la dll à différents endroit et rien n'y fait...

Debut Christophe

[mailto:debut.christophe@skynet.be debut.christophe@skynet.be]
Messages postés
126
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
11 juillet 2006

bonjour
juste une idee.
Tu es sur de devoir mettre ./ devant le nom de ta DLL dans le load library.
Generalement je mets que le nom de ma dll et je la place ou se trouve l'exe.

TOCHE