J'ai besoin qu'une Dll charg�e dynamiquement (et li�e dynamiquement � la Dll MFC) puis agir sur une checkbox.
Ca j'y arrive, je transmet � ma Dll l'adresse de la checkbox.
Mais j'ai besoin que l'evenement OnMaCheckBoxClicked() soit egalement appell� !!!
Et c'est la o� j'ai un probleme.
-----------------------------------------------------------
J'ai d'abord voulu faire un pointeur sur fonction,
1 2 3
| void (*pFnc) ()
pFnc = OnMaCheckBoxClicked; |
Mais c'est loin d'etre g�nial le linker me jete en me disant qu'il est impossible de convertir un void (__thiscall CMaClasseDlg::*)(void) en un pFnc
Or mon but est que ma Dll n'ai pas � inclure le header de CMaClasseDlg (sinon je devrai recompiler ma Dll a chaque fois que je modifie CMaClasseDlg )
------------------------------------------------
Ma deuxieme tentative, a �t� de poster un message :
AfxGetMainWnd()->PostMessage(BN_CLICKED,(WPARAM)1011,(LPARAM)pMaCheckBox->GetSafeHwnd()); //1011 est l'ID de ma checkBox(oui je sais, c'est vraiment deguelasse :) )
Et la visiblement, le message n'arrive jamais a destination
-sauriez vous me dire qu'est ce qui cloche dans ces instructions?
-est il possible de faire le pointeur vers l'evenement, sans avoir � sp�cifier le type CMaClasseDlg dans la Dll?
-Comment faire pour poster le message depuis la Dll vers le controle du thread principale pour que l'evenement soit d�clench�?
Merci d'avance pour votre aide.
Partager