我的程序步骤如下:
1、让A程序给B程序(SDI)发消息(确认消息发送成功)
2、(随便在B的一个dialog或者Minframe或者App.....X里)添加消息处理
0nMyMsg(WPARAM wParam, LPARAM lParam);
{}
3、在X.h添加声明afx_msg void 0nMyMsg(WPARAM wParam, LPARAM lParam);
4、在X.cpp中消息映射到消息处理函数中:
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
5、我没有收到消息!!!问题:是不是因为消息带有一定的目的地信息?我需要怎么做
1、让A程序给B程序(SDI)发消息(确认消息发送成功)
2、(随便在B的一个dialog或者Minframe或者App.....X里)添加消息处理
0nMyMsg(WPARAM wParam, LPARAM lParam);
{}
3、在X.h添加声明afx_msg void 0nMyMsg(WPARAM wParam, LPARAM lParam);
4、在X.cpp中消息映射到消息处理函数中:
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
5、我没有收到消息!!!问题:是不是因为消息带有一定的目的地信息?我需要怎么做
#define WM_MY_MESSAGE(WM_APP+101)在某个所有文件都可以调用的.h里了
#define WM_MYMESSAGE (WM_USER + 100)afx_msg LRESULT 0nMyMsg(WPARAM wParam, LPARAM lParam);
ON_MESSAGE(WM_MYMESSAGE, 0nMyMsg)我怎么看你的两个函数不一样呢???0nMyMsg 与 OnMyMessage?????不会说是这个原因吧!!!
const UINT wm_Find = RegisterWindowMessage( "my global message )
BEGIN_MESSAGE_MAP( CMyWnd, CMyParentWndClass ) //一定要用主窗口来接收
//{{AFX_MSG_MAP( CMyWnd )
ON_REGISTERED_MESSAGE( wm_Find, OnFind )
// ... Possibly more entries to handle additional messages
//}}AFX_MSG_MAP
END_MESSAGE_MAP( )在接收端写入消息声明:
afx_msg void OnFind(WPARAM wParam,LPARAM lParam);
发送端写入:
::PostMessage(HWND_BROADCAST,wm_Find,0,0);
那SDI中怎么办?怎样确定某个消息是否是窗口消息?
不过发消息是用这个
::PostMessage(pApp->m_hWnd,WM_RECVBAG,802,nNO) ;
是不是就是需要用特定的接受,比如窗口