tophque
Messages postés2Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 novembre 2005
-
18 nov. 2005 à 09:10
tophque
Messages postés2Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention18 novembre 2005
-
18 nov. 2005 à 10:00
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.
ricky78
Messages postés126Date d'inscriptionjeudi 5 juin 2003StatutMembreDernière intervention11 juillet 2006 18 nov. 2005 à 09:21
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.