在主线程不能接收工作线程发来的sendmessage消息附带的消息 - C++ Builder / Windows SDK/API
在工作线程向主线程发送消息:
- C/C++ code
int statuss = 1;SendMessage(FM->Handle, WM_MYMSG, 0, (LPARAM)status);
在主线程里接收:
- C/C++ code
void __fastcall FM::OnMYMSG(TMessage &MyMessage){ int x; x = msg.lParam;}
这样在主线程里接收不到呢。。。。请教各位。。
[解决办法]
窗体中可作了消息映射?
[解决办法]
参数在TMessage的lParam或wParam里
[解决办法]
没看明白,楼主是否是下面的意思:这里SendMessage中发送的statuss的值,在OnMYMSG中取到?
如果是这样,用下面的代码即可:
int statuss = 1;
SendMessage(FM->Handle, WM_MYMSG, 0, (LPARAM)status);
在这里可以取到:
- C/C++ code
void __fastcall FM::OnMYMSG(TMessage &MyMessage){ int value; switch (MyMessage.Msg) { case WM_MYMSG: value = MyMessage.LParam;//这个就是statuss的值 break; default: break; }}