Voila du code qui passait sous Visual C++ 6 :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
 
ON_MESSAGE(UM_RESULTAT_REQUETE,OnResultatExecutionRequete)
...
LRESULT PWH_CClientApp::OnResultatExecutionRequete(WPARAM wParam, LPARAM lParam) {
...
}
Malheureusement sous Visual C++ 8 (2005) � la compilation �a ne passe plus et �a donne ce message d'erreur :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
 
error C2440: 'static_cast' : impossible de convertir de 'LRESULT (__thiscall PWH_CClientApp::* )(WPARAM,LPARAM)' en 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'
Aucune fonction ayant ce nom dans la portée ne correspond au type de la cible
La classe PWH_CClientApp d�rive de CWinApp. A mon avis le probl�me vient de l� non ?

Y'aurait-il une autre macro qui permette d'intercepter les message sans �tre forc�e d'utiliser des m�thode d�rivant de CWnd ?

parce que ON_MESSAGE sous Visual C++ 8 fait un static_cast :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
 
define ON_MESSAGE(message, memberFxn) \
	{ message, 0, 0, 0, AfxSig_lwl, \
		(AFX_PMSG)(AFX_PMSGW) \
		(static_cast< LRESULT (AFX_MSG_CALL CWnd::*)(WPARAM, LPARAM) > \
		(memberFxn)) }
Merci d'avance pour votre aide.