发送一个自定义的消息时,如果目标窗口关闭。但消息已经发出去,这时系统如何来处理这个消息?

解决方案 »

  1.   

    如果你是用的SendMessage来发送消息,
    SendMessage会等到目标窗口处理完消息后才返回,因此,如果目标窗口不存在,你SendMessage肯定会失败。如果你是用的PostMessage来发送消息,
    PostMessage本身就是直接返回的,因此目标窗口存在与否对你来说都一样。
      

  2.   

    SendMessage会等待返回,如果不存在目标窗口,程序会阻塞在这个位置PostMessage发完就返回,消息没人来处理,被系统扔了吧
      

  3.   

    是用PostMessage来发送消息的。因为目标窗口什么时候关闭不知道。