基于Dialog的MFC程序WinServerDlg.h 中定义了#define WM_LOG WM_USER + 1000protected:
afx_msg LRESULT OnLogMessage(WPARAM wParam, LPARAM lParam);
WinServerDlg.cpp 中定义BEGIN_MESSAGE_MAP(CWinServerDlg, CDialog)
//{{AFX_MSG_MAP(CWinServerDlg)
ON_MESSAGE(WM_LOG, OnLogMessage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()LRESULT CWinServerDlg::OnLogMessage(WPARAM wParam, LPARAM lParam)
{
//MessageBox("OnLogMessage!");
m_EDLog.SetWindowText("123");
return 1;
}创建线程 CWinThread *hHandle_s;
hHandle_s=AfxBeginThread(Listen,this);在线程发送消息的代码 ::SendMessage((HWND)lpParam,WM_LOG,0,0);
为什么主线程中不能收到消息,触发
LRESULT CWinServerDlg::OnLogMessage(WPARAM wParam, LPARAM lParam)
事件?
afx_msg LRESULT OnLogMessage(WPARAM wParam, LPARAM lParam);
WinServerDlg.cpp 中定义BEGIN_MESSAGE_MAP(CWinServerDlg, CDialog)
//{{AFX_MSG_MAP(CWinServerDlg)
ON_MESSAGE(WM_LOG, OnLogMessage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()LRESULT CWinServerDlg::OnLogMessage(WPARAM wParam, LPARAM lParam)
{
//MessageBox("OnLogMessage!");
m_EDLog.SetWindowText("123");
return 1;
}创建线程 CWinThread *hHandle_s;
hHandle_s=AfxBeginThread(Listen,this);在线程发送消息的代码 ::SendMessage((HWND)lpParam,WM_LOG,0,0);
为什么主线程中不能收到消息,触发
LRESULT CWinServerDlg::OnLogMessage(WPARAM wParam, LPARAM lParam)
事件?
解决方案 »
- 如何让图片想幻灯那样显示呢?
- 巨简单问题,如何将数值转换成字符串
- SOS!SOS!SOS! 救我! 用API函数实现打印
- 从文件中截取一块(如:10K),如何保证最后一个字不被分割?然后计算出正常块的size.
- VC6.0的程序移到vs2008,不能正常运行,求高手帮忙
- 对图像处理得到边缘信息后如何建立坐标获得参数信息计算得到圆心和半径!求大神指点!
- VS C++目录设置
- 哪儿有vb三层开发的资料?
- daodi
- 远程主机的注册表信息
- 做 ActiveX 要传入 ImageList ,如何实现呢?(真诚表示感谢 120分 只给一个人,帮顶的只能说句感谢了,感谢你们帮顶).
- 疑惑,使用WinInet函数在DLL里面,在FreeLibrary执行的为什么这么慢?
把
::SendMessage((HWND)lpParam,WM_LOG,0,0);改为:
CWinServerDlg *pDlg = (CWinServerDlg *)lpParam;
::SendMessage(pDlg->m_hWnd,WM_LOG,0,0);
改了后,还是收不到消息哦