JAVA不同层次模拟按键思路分享
来源:互联网 发布:iphone蜂窝数据快捷键 编辑:程序博客网 时间:2024/06/15 22:12
JAVA不同层次模拟按键思路分享
一、键盘、鼠标输入层次介绍
1、当按下键后,键盘或鼠标产生扫描码(不同芯片的键盘产生扫描码不一样)。
2、扫描码被送给相应硬件的驱动,驱动将扫描码转换成虚拟码(就是以 vk_ 打头的,其实就是byte大小的数了,不同语言的虚拟码不全一样)。
3、虚拟码插入消息队列,等待被传给相应程序。然后就是程序处理的事了。
二、模拟层次介绍
1、局部模拟:用程序生成虚拟码,将虚拟码直接发给程序。
其一:Java自带的Robot就是这么干的。处理普通程序还有效,游戏就不用想了。
其二:jna的自带platform中,User32类 的sendMessage、postMessage方法。处理普通程序还有效,游戏就不用想了。
2、全局模拟:将扫描码、虚拟码插入到消息队列,让后就不管了。
其一:jna的自带platform中,User32类 的keybd_event方法。处理普通程序还有效,游戏就不用想了。
其二:键盘钩子。没试过,没干过C,听说改键是这么做的。
3、驱动级模拟:用程序模仿键盘端口给系统发送扫描码。
这个还没试过,本来准备用jna + winio试一下的。后来发现网上不少说winio太出名了,游戏会针对性防范,再加上winio64位版还要签名,所以没试。不过我想如果真是驱动级的,应该就能行。
三、总结
上面说的“不用想了”,就是经过测试,此路不通。没有范例,只好自己过河摸石头,我都替你们摸好了。上面还有两个思路没有测试,有兴趣的读者可以试一下。或者更有强者在已经再用了,请指点一下。
心态要静若止水。
PS:机缘巧合,我发现了按键魔盒广告,通过某宝搜素按键魔盒,发现了dm.dll哈哈
我用jacob + dm.dll可以控制游戏了。
next article
- JAVA不同层次模拟按键思路分享
- java模拟键盘按键
- java模拟键盘按键
- Java Swing模拟按键事件
- JAVA模拟键盘按键测试类
- java反照机制模拟按键输入
- 模拟按键
- 模拟按键
- 按键模拟
- 模拟按键
- 模拟按键
- android 软按键 模拟按键
- Java中方法及值的不同层次使用
- 按键扫描C语言思路
- 模拟键盘按键
- 模拟键盘按键
- 如何模拟按键
- VB模拟按键
- ios数据缓存
- 行业分析已经过时
- 九宫格设计改进
- DOS下切换目录方法CD命令
- 我们不是牛人,所以还是老老实实跟着兴趣走吧
- JAVA不同层次模拟按键思路分享
- iOS笔记--oc语法6 (OC中有私有变量和私有方法的相关讨论)
- hdu 3666 THE MATRIX PROBLEM
- wpf工程中在Xaml文件下添加多个cs文件
- 第十二周项目1 图基本算法库
- Android高效获取指定类型文件,获取文件不求人!
- Android电话监听与短信监听
- 回溯法Matrix
- 最大似然估计学习总结------MadTurtle 1. 作用 在已知试验结果(即是样本)的情况下,用来估计满足这些样本分布的参数,把可能性最大的那个参数clip_image002作为真实cl