博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
keybd_event跟SendMessage,PostMessage模拟键盘消息的区别 z
阅读量:6985 次
发布时间:2019-06-27

本文共 541 字,大约阅读时间需要 1 分钟。

首先你会发现keybd_event函数中是没有窗口句柄作为参数的,好奇的你一定会觉得很奇怪,那是因为,keybd_event是全局模拟按键的,只对前台窗口(即当前的活动窗口)才可以,但是如果模拟的按键正好也是某个窗口的全局热键消息,那该窗口也能接收到的

  而SendMessage 、PostMessage是对指定句柄窗口都其作用的,对于做一些一外挂是非常有用的。例如可以做成这样的效果:即用SendMessage/PostMessage在某一个窗口模拟动作,而同时自己可以在其他窗口做其他事情,互不影响的!

  但是有一点要注意,很多人在模拟键盘消息的时候,都会忘记模拟WM_KEYUP的消息。。。

  还有一点就是,PostMessage中的窗口句柄参数,可以设置为HWND_BROADCAST,即广播,但不要理所当然地认为是对所有的窗口都起作用!!!它只对系统的顶层窗口起作用,子窗口是收不到这个消息的!!!

  还要注意的是SendMessage是没有HWND_BROADCAST参数的,那是因为,SendMessage总是等发送的消息在对应的窗口消息队列 中处理完毕后才返回的(这是一种负责的行为), 细想一下就知道为什么SendMessage没有HWND_BROADCAST参数了!!

转载地址:http://iimpl.baihongyu.com/

你可能感兴趣的文章
李想创办的车和家发布智能电动车品牌“理想智造”
查看>>
智利海岸附近发生里氏5.6级地震 无人员伤亡消息
查看>>
手机上的中国“轻春运”
查看>>
中国税务机关确保减税降费政策落地生根
查看>>
中蒙二连边民互市贸易区出口额创新高
查看>>
BAT架构师总结之网站核心架构要素
查看>>
摩拜将更名为“美团单车” 网友:可送外卖吗?
查看>>
广东惠州公安一名副所长因公牺牲
查看>>
除了火药味,这里的演练还多了……
查看>>
继BERT之后,这个新模型再一次在11项NLP基准上打破纪录
查看>>
RTX 2080时代,如何打造属于自己的深度学习机器
查看>>
“破碎-重组-破碎” CSS3实现Lowpoly风格变形动画终极篇
查看>>
VKDevTool App黑盒调试工具
查看>>
那个你身边悄悄离职的人去哪儿了?IT人才流动大盘点
查看>>
精读《手写 SQL 编译器 - 智能提示》
查看>>
React.js 小书 Lesson4 - 前端组件化(三):抽象出公共组件类
查看>>
Java多线程干货系列—(四)volatile关键字| 掘金技术征文
查看>>
我们来翻翻元素样式的族谱-getComputedStyle
查看>>
Hessian HTTP POST访问时,Nginx返回411问题
查看>>
Redux进阶系列2: 如何合理地设计State
查看>>