PostMessage 只是把消息放入队列,不管其他程序是否处理都返回,然后继续执行 ;
而 SendMessage 必须等待其他程序处理消息后才返回,继续执行。
PostMessage 的返回值表示 PostMessage 函数执行是否正确 ;
而 SendMessage 的返回值表示其他程序处理消息后的返回值。
使用这两个发送消息函数的最重要的是要看你的程序是否要对消息的滞后性关注否 ,PostMessage 会造成消息的滞后性 , 而 SendMessage 则不会 , 但如果 SendMessage 消息处理失败 , 则会造成程序停止 !
而 SendMessage 必须等待其他程序处理消息后才返回,继续执行。
PostMessage 的返回值表示 PostMessage 函数执行是否正确 ;
而 SendMessage 的返回值表示其他程序处理消息后的返回值。
使用这两个发送消息函数的最重要的是要看你的程序是否要对消息的滞后性关注否 ,PostMessage 会造成消息的滞后性 , 而 SendMessage 则不会 , 但如果 SendMessage 消息处理失败 , 则会造成程序停止 !
在使用PostMessage()发送消息,并向消息处理函数传递指针或者引用结构的时候,请一定考虑结构或者指针指向的实例是否在消息处理函数执行时还有效,使用局部的结构作为消息参数传递,不小心就会出现这种野指针错误,而且不容易查明原因。因此,PostMessage()的参数尽可能避免使用局部的结构变量作为参数.
本文详细解释了PostMessage与SendMessage两种消息发送函数的区别。PostMessage将消息放入队列后即返回,而SendMessage则需等待消息处理完毕才返回。此外,文章还强调了使用PostMessage时传递指针或引用结构时可能遇到的问题。

6756

被折叠的 条评论
为什么被折叠?



