Bonjour
Pour expliquer brièvement, j'ai fait une librairie en C sous Visual C++ 6 qui doit utiliser une autre librairie développée sous Borland C++.
Je fais donc un chargement via la fonction LoadLibrary (plus exactement LoadLibraryEx pour prendre en compte les librairies utilisées par la seconde librairie). Et la libération également via FreeLibrary.
Ces appels se font lors du DLL_PROCESS_ATTACH et DLL_THREAD_ATTACH du DllMain pour le chargement, et lors du DLL_PROCESS_DETACH et DLL_THREAD_DETACH du DllMain pour la libération.
Le chargement se fait parfaitement.
Mais le problème se situe au niveau de la libération : l'appel de DLL_PROCESS_DETACH dans la fonction DllEntryPoint de la librairie appelée, arrive avant mon appel de libération. Et je n'arrive pas à trouver pourquoi.
Est-ce que quelqu'un pourrait m'éclairer sur le problème ?
Comment ça se fait ?
Merci d'avance.
Partager