class CMessagerDialog : public CWnd
{
public:
CMessagerDialog();
~CMessagerDialog();
protected:
afx_msg LRESULT DoSomthing(WPARAM wParam,LPARAM lParam);
}
BEGIN_MESSAGE_MAP(CGrmMonServer, CWnd)
ON_MESSAGE(WM_APP + 5, &CMessagerDialog::DoSomthing)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
CMessagerDialog::CMessagerDialog()
{
CString wnd_class_name = ::AfxRegisterWndClass(NULL);
BOOL created = this->CreateEx(0,wnd_class_name, L"MessagerDialog",0,0,0,0,0,HWND_MESSAGE,0);
}
LRESULT CMessagerDialog::DoSomthing(WPARAM wParam,LPARAM lParam)
{
AfxMessageBox(L"Who call me?");
return 0;
}
//实例化
CMessagerDialog *msgdlg = new CMessagerDialog;
//使用时,直接调用函数发送消息即可
msgdlg->SendMessage(WM_APP + 5, 0, 0);
如果主程序中无DoModal,可以手动调用msgdlg->RunModalLoop();