非队列化消息则是其它消息。在许多情况下,非队列化消息来自呼叫特定的Windows函数。例如,当WinMain呼叫CreateWindow时,Windows将建立窗口并在处理中给窗口消息处理程序发送一个WM_CREATE消息。当WinMain呼叫ShowWindow时,Windows将给窗口消息处理程序发送WM_SIZE和WM_SHOWWINDOW消息。当WinMain呼叫UpdateWindow时,Windows将给窗口消息处理程序发送WM_PAINT消息。键盘或鼠标输入时发出的队列化消息信号,也能在非队列化消息中出现。例如,用键盘或鼠标选择了一个菜单项时,键盘或鼠标消息就是队列化的,而说明菜单项已选中的WM_COMMAND消息则可能就是非队列化的。
 
图5 Windows消息机制
(4)    SendMessage()与PostMessage()之间的区别
它们两者是用于向应用程序发送消息的。PostMessagex()将消息直接加入到应用程序的消息队列中,不等程序返回就退出;而SendMessage()则刚好相反,应用程序处理完此消息后,它才返回。图6能够比较好的体现这两个函数的关系:
 
图6 postmessage与sendmessage的区别
(5)  函数peekmessage和getmessage的区别
1.GetMessage将等到有合适的消息时才返回,而PeekMessage只是撇一下消息队列。
2.GetMessage会将消息从队列中删除,而PeekMessage可以设置最后一个参数wRemoveMsg来决定是否将消息保留在队列中。
上一篇:VC++数字图像边缘检测算法研究与实现
下一篇:ASP.NET的家教网站设计与开发+文献综述

Wireshark的P2P文件共享中的行为提取软件设计

Socket点对点聊天文件传输系统设计

基于云储存的文件管理系统设计+源代码

asp.net多维度元信息支持的...

茬RedHat中使用ReiserFS文件系统【1804字】

使用indy的IdTcpServer,IdTcpclient传輸文件【68字】

使用http协议和winsockapi实现...

基于Joomla平台的计算机学院网站设计与开发

压疮高危人群的标准化中...

浅谈高校行政管理人员的...

上海居民的社会参与研究

STC89C52单片机NRF24L01的无线病房呼叫系统设计

酵母菌发酵生产天然香料...

浅论职工思想政治工作茬...

AES算法GPU协处理下分组加...

从政策角度谈黑龙江對俄...

提高教育质量,构建大學生...