对话框中
ON_MESSAGE(COM_RECVDATA,OnRecvData)“static_cast”: 无法从“void (__thiscall CCAPIDlg::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)”相关代码:对话框中
ON_BN_CLICKED(IDC_BUTTON_CLEAR, &CCAPIDlg::OnBnClickedButtonClear)
ON_BN_CLICKED(IDC_BUTTON_RCLEAR, &CCAPIDlg::OnBnClickedButtonRclear)
ON_MESSAGE(COM_RECVDATA,OnRecvData)
头文件中
afx_msg void OnBnClickedButtonClear();
afx_msg void OnBnClickedButtonRclear();
afx_msg void OnRecvData(WPARAM wParam, LPARAM lParam);
 ::PostMessage(hWnd, COM_RECVDATA, (unsigned int) str, wCount); 这个是什么问题呢

解决方案 »

  1.   

    #define COM_RECVDATA WM_USER+1000//自定义消息
    是个自定义消息
      

  2.   

    OnRecvData
    你的自定义消息的函数是啥样的....这样的么 void OnRecvData();需要改成LRESULT OnRecvData(WPARAM wParam,LPARAM lParam)
      

  3.   

    恩,是void OnRecvData();
    用void不行吗
      

  4.   

    将消息函数返回值void改为LRESULT 
      

  5.   

    re:用void不行吗
    不行,vs2008消息返回类型都是LRESULT
      

  6.   

    OK,谢谢各位了,以前用vc 6.0都是用void的,结贴。