项目需要两个程序使用进程间通信进行数据交换,每个程序运行出来都是窗体。
我用文件映射实现进程间通信没有问题,
但是如果鼠标一直点着一个窗口的标题时,另外窗体PostMessage给它发消息它收不到,通信中断了。
请高人指教。

解决方案 »

  1.   

    也许是消息被阻塞,当鼠标点在窗口标题时,程序就进入如WM_NCLBUTTONDWON事件处理函数中了,没有返回,所以不能处理其它消息
      

  2.   

    PostMessage发送的消息是可能被丢失的,尤其是目的地很忙的时候。
      

  3.   

    if(!PostMessage(XXXXX))
    {
        DWORD err = GetLastError();
    }看看错误代码。
      

  4.   

    问题已解决,谢谢各位!
    我原来使用在PreTranslateMessage中截获收到的消息进行处理,
    现在改为通过RegisterWindowMessage注册消息,
    使用ON_REGISTERED_MESSAGE进行消息映射函数处理。
    这样可以避免这个问题。