Bon, j'ai un gros soucis pas facile a régler je pense ... !
J'ai créé une petite application principale et une DLL qui utilisent les mfc (en shared dll).
L'appli charge explicitement la dll et appelle une fonction, tout marche bien ...
Je link maintenant ma dll avec plusieurs librairies statiques (.lib) qui utilisent pour certaines les MFC (toutes en shared dll).
Et lorsque, dans le code de ma dll, j'inclu un fichier header lié a une librairie statique, afin d'appeler une fonction de ses librairies, je me prends le bel assert suivant : ASSERT(AfxGetThread() == NULL) dans le fichier appcore.cpp, dans le constructeur de CWinApp...
Il semblerait qu'une CWinApp soit instanciée plusieurs fois, à la fois dans mon appli principale, mais aussi dans ma dll, et enfin dans les librairies statiques que je charge dans ma dll ... c'est peut etre pour cela que le thread principale de AfxGetThread() ne vaut pas null, dans le constructeur ...
Mais je suis un peu paumé niveau CWinApp ou thread, j'y connais pas grand chose
Si quelqu'un a deja eu un pb similaire et veut bien m'aider ...
merci !
Partager