error C2440: “static_cast”: 无法从“void (__thiscall Dlg::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)” 这种情况是将VC6.0下编译的项目转移到VS2005或2008下产生的,主要是ON_MESSAGE()函数的第二个参数引起的,VS要求第二个参数返回值为LRESULT ,而VC下是void,故需...
错误C2440 “static_cast”: 无法从“long (__thiscall CKMainWnd::* )(WPARAM,CView *)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)” opctestclient e:\centerproject\opc\visual c++ opc client example\mainwnd.cpp 132 原因 开发平台由VC6.0升级至VS2005以上的版本,需要将原有的项目迁移...
(static_cast< LRESULT (AFX_MSG_CALL CWnd::*)(CPoint) > (&ThisClass :: OnNcHitTest)) }, 注意返回值类型由UINT改成了LRESULT,再加上static_cast的严格检查,所以就出错了。修改的方法就是将你的OnNcHitTest函数由: afx_msgUINT OnNcHitTest(CPoint point); 改成: afx_msgLRESULT OnNcHitTest(CP...
error C2440: “static_cast”: 无法从“void (__thiscall CMainFrame::* )(BOOL,HTASK)”转换为“void (__thiscall CWnd::* )(BOOL,DWORD)” 1> 从基类型到派生类型的强制转换需要 dynamic_cast 或 static_cast error C2664: “CWnd::OnActivateApp”: 不能将参数 2 从“HTASK”转换为“DWORD”; 一...
1> 从基类型到派生类型的强制转换需要 dynamic_cast 或 static_cast error C2664: “CWnd::OnActivateApp”: 不能将参数 2 从“HTASK”转换为“DWORD”; 一行行的改,第一个是在CMainFrame中没有对消息映射ON_WM_ACTIVATEAPP()处理,这是因为第二个错误引起的,因为现在VS2012中把函数中声明了的HASK的类型是DWO...
1>.\GridCtrl\GridCtrl.cpp(572) : error C2440: 'static_cast' : cannot convert from 'void (__cdecl CGridCtrl::* )(UINT)' to 'void (__cdecl CWnd::* )(UINT_PTR)'here is a portion of the code in GridCtrl.cpp:BEGIN_MESSAGE_MAP(CGridCtrl, CWnd) //EFW - Added ON_WM_RBUT...
(static_cast< LRESULT (AFX_MSG_CALL CWnd::*)(CPoint) > (&ThisClass :: OnNcHitTest)) }, 注意返回值类型由UINT改成了LRESULT,再加上static_cast的严格检查,所以就出错了。修改的方法就是将你的OnNcHitTest函数由: afx_msgUINT OnNcHitTest(CPoint point); ...
(CPoint))&OnNcHitTest }, 但是新版本变成了: #define ON_WM_NCHITTEST() \ { WM_NCHITTEST, 0, 0, 0, AfxSig_l_p, \ (AFX_PMSG)(AFX_PMSGW) \ (static_cast< LRESULT (AFX_MSG_CALL CWnd::*)(CPoint) > (&ThisClass :: OnNcHitTest)) }, 注意返回值类型由UINT改成了LRESULT,再加...
解决方法如下:例如:TransparentWnd.cpp中ON_MESSAGE(WM_LIBEN,OnLiben):第一:把原来的消息函数返回值类型改为LRESULT(找到OnLiben定义,如Viod CTransparentWnd::OnLiben(WPARAM wParam,LPARAM lParam)改成LRESULT CTransparentWnd::OnLiben(WPARAM wParam,LPARAM lParam),声明处也要改,如afx_...
原因:VC6程序在VS2008中编译 解决:将UINT改成LRESULT