在头文件中加入一个定义用户消息的语句:
const WM_THREADENDED = WM_USER+100;//自定义线程消息
再在头文件中加入消息处理函数的声明:
//}}AFX_MSG
afx_msg LONG OnThreadEnded(WPARAM wParam, LPARAM lParam);//声明消息处理函数
在CPP文件中加入消息映射代码:
ON_MESSAGE(WM_THREADENDED, OnThreadEnded)//消息映射
启动线程:
HWND hWnd=GetSafeHwnd();
AfxBeginThread(ThreadProc,hWnd); //CreateThread(NULL, 0, ThreadProc, m_hWnd, 0, NULL);
在线程中发送消息:
::PostMessage((HWND)pParam,WM_THREADENDED,0,0);//发送消息
写好消息函数:
LONG CMyDlg::OnThreadEnded(WPARAM wParam,LPARAM lParam)
{
//do something
}