一个线程如何向另外一个线程的窗口发消息,方法有2:
第一种,是调用函数:SendMessage发送一个MSG,此函数需要一个句柄ID;
第二种,方法是调用PostThreadMessage,此函数需要线程ID,而两函数还有一个区别就是SendMessage等待返回,PostTheardMessage不等待返回,就是使用PostThreadMessage的程序不知道消息是否被处理
-----------------------------------------
消息存放位置:
问题未解决!-_-!
-----------------------------------------
介绍THREADINFO
* 参考《Windows核心编程》26.1图,ThreadInfo,包括:
* 登记消息队列指针(Posted-Message):使用PostMessage函数发送的消息,将存放于此
* 虚拟输入队列指针(Virtualized-input):接收接盘的等虚拟输入信息队列
* 发送消息队列指针(Send-Message):SendMessage函数发送的消息存放位置
* 应答消息队列指针(Reply-Message):使用SendMessage函数发送信息后,返回的信息存放于此
* nExitCode:确定线程退出状态,是一个int型,不同数值说明线程处于不同状态
* 唤醒标志:判断是否处于唤醒状态
* 局部输入状态变量:不详
---------------------------------------------
消息和事件联系和区别:
事件是针对某个动作的响应函数,消息是函数之间通信的共同约定的结果.
阅读(838) | 评论(0) | 转发(0) |