生活的天平本不平衡,只有通过努力改变其偏向。

Postmessage与SendMessage的折腾

2008-05-05

如果要是问起PostMessage与SendMessage之间的区别,我肯定回答得头头是道。Postmessage只是投递消息,不会管你收 不收到以及怎么处理,投递以后直接返回;而SendMessage必需等消息处理后才返回。两者的区别可以形象比喻成寄信,PostMessage是寄的 平信,不会管有没有收到,只管寄就是了。而SendMessage寄的EMS,对方签收后才会完成投递。

道理是没错了,等你去用的时候,却发现自己将这个简单的道理给忘了。比如以下代码:

ASM代码
  1. invoke SendMessage,dateCtrl,DTM_GETSYSTEMTIME, NULL, offset g_targetDateTime

是取一个时间控件中的日期,用g_targetDateTime保存返回。这是正确的,而我开始是用PostMessage去取的,整了半天都没有数据过来,以为其他地方出问题。查了半天,原来是SendMessage与PostMessage造成的。郁闷!

作者:lonkil | 分类目录:本站原创编程开发 | 标签:

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>