首页
社区
课程
招聘
[未解决,已结帖] [求助]如何实现安卓模拟器后台鼠标左击 50.00雪花
发表于: 2019-9-12 22:06 4515

[未解决,已结帖] [求助]如何实现安卓模拟器后台鼠标左击 50.00雪花

2019-9-12 22:06
4515
如何通过Windows API实现安卓模拟器后台鼠标操作?
postmessage可以实现后台按键,但是鼠标后台不行,我用C#写的:
PostMessage(Hwnd, WM_LBUTTONDOWN, 0, x + (y << 16));
PostMessage(Hwnd , WM_LBUTTONUP, 0, x + (y << 16));
运行时给了管理员权限,可以实现鼠标点击窗口控件句柄的指定位置,但是如果窗口最小化或者不在可视区域,鼠标点击就没有效果。
安卓模拟器的运行模式有opengl和directx两种,C/C++或者C#都可以。
用了autohotkey的controlclick 也不能实现后台鼠标
我怀疑是系统不断获取鼠标的位置导致窗口接收到的鼠标坐标不对导致没有效果,是不是通过某种方法屏蔽掉这种消息到达窗口就能有效果?


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 47
活跃值: (197)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
弄不好就是模拟器自己在
WM_ACTIVATE ~ WA_INACTIVE 之后屏蔽了鼠标和按键消息

啥不用ADB 呢
2019-9-13 02:04
0
雪    币: 197
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
找了几个鼠标后台连点器,是可以后台点击安卓模拟器的,不知道用了什么系统API实现的,我用PostMessage就不行。
查看depends,不知道用的哪个

最后于 2019-9-13 08:08 被nodyhd编辑 ,原因:
2019-9-13 08:02
0
雪    币: 197
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
自己解决了,postmessage是可以后台按键的,通过api monitor分析鼠标后台连点器,发现问题出在句柄的选择上,发送消息对象不是选最内层的那个句柄而是倒数第三层的Qt5QWindowIcon RenderWindowWindow,adb估计可以,没试。
2019-9-13 18:23
0
雪    币: 197
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
发现一个好用的开源插件:https://github.com/WallBreaker2/op,可以窗口最小化后台截图和操作鼠标。
2019-9-14 18:54
0
雪    币: 1385
活跃值: (5609)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
6
你可以用模拟器内部事件,用adb发送事件命令解决啊。
2019-9-18 17:33
0
游客
登录 | 注册 方可回帖
返回
//