找回密码
 加入
搜索
查看: 12922|回复: 16

[系统综合] [已解决]注册快捷键HotKeySet的问题,按键Ctrl、Alt等一直处于按下,再按一次就好了

 火.. [复制链接]
发表于 2010-10-26 11:48:07 | 显示全部楼层 |阅读模式
本帖最后由 honeyxiaoyi 于 2010-11-22 14:18 编辑

比方说注册了一个快捷键如下
HotKeySet("^1", "LineAutoEdit")      ;快捷键Ctrl+1
函数LineAutoEdit利用循环调用了多次Send函数去模拟键盘输入,但是运行时,按了快捷键Ctrl+1后,执行完函数LineAutoEdit之后,经常造成键盘或鼠标失灵。后来发现,自己再按一次Ctrl键就恢复正常了。
       如果快捷键是Alt+1的话,就是再按一次Alt键就恢复正常了。

请问这是怎么回事啊。

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-10-26 12:19:25 | 显示全部楼层
可能是调用键盘输入导致的键盘锁定,这方面建议楼主自己多加测试,实在不行LineAutoEdit函数最后模拟按下Ctrl键
发表于 2010-10-26 14:37:08 | 显示全部楼层
回复 1# honeyxiaoyi
检查下“循环调用了多次Send函数”,问题应该是出在这个地方
 楼主| 发表于 2010-10-26 22:16:36 | 显示全部楼层
回复 2# ROUSTAR31

试了试在函数结束之前加了一句send(“^”)还是没有解决问题,这个Ctrl处于一直按下的问题有时出现,而且概率比较高。
    谢谢了
发表于 2010-10-26 23:32:24 | 显示全部楼层
键按住时间久了
系统或程序中还在做键发送操作(只有退出程序才会中止键击操作—恢复正常)
.
你试试按住键3秒
系统会发送多少个键击(字符)
发送没完成再发送的话,也是追加到前面的操作任务中(随后再发送),当然不能成功作常态恢复!
.
发表于 2010-10-27 03:17:48 | 显示全部楼层
为什么au3的程序出现这样的问题,其他语言做的程序确没有?
发表于 2010-10-27 07:56:56 | 显示全部楼层
取消热键设置HotKeySet("^1", "") 试试看
发表于 2010-11-6 20:09:50 | 显示全部楼层
这个问题也困扰我好久了,而且我的有点怪,必须按左边的CTRL 和 ALT 键才能取消相应的按下状态,按右边的不行。
发表于 2010-11-6 20:17:30 | 显示全部楼层
本帖最后由 binghc 于 2010-11-6 20:21 编辑

呵,这个问题我也碰到过,很烦人,大家可以代码的最后加上一句这样的代码:
Send("{ctrldown}{ctrlup}")

看情况,中间可适当加一点延迟。

既然得再按一下键盘,那就再模拟一下按键,让它弹起!

评分

参与人数 1金钱 +20 收起 理由
afan + 20

查看全部评分

发表于 2010-11-8 18:29:24 | 显示全部楼层
9楼正解
按键最后必须释放
Send("{ctrldown}")
SLEEP(50)
Send("{ctrlup}")
但在次之前不能使用过BlockInput()否则最后有可能再次被锁定了
(偶模拟发送游戏<gta_sa>作弊码就是这样处理的,根本不用驱动级模拟)

评分

参与人数 1金钱 +20 收起 理由
afan + 20

查看全部评分

发表于 2010-11-8 18:35:51 | 显示全部楼层
这就是用AU3直接模拟键盘(不用其他驱动的)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-11-8 18:48:16 | 显示全部楼层
如果在发送字符过程中还受CTRL影响
你可在发送之前HOOK键盘使只允许是要发送的字符通过.其他忽略,最后关闭HOOK

最后再释放按键
!
发表于 2010-11-8 18:59:22 | 显示全部楼层
使用模拟键盘有3个关键选项

opt("SendAttachMode
opt("SendKeyDownDelay
opt("SendKeyDelay

自己好好去研究研究~~~
 楼主| 发表于 2010-11-22 14:17:42 | 显示全部楼层
回复 10# _ddqs.

按照此方法解决了,谢谢了,还有9楼的
发表于 2012-2-8 16:42:26 | 显示全部楼层
学习下!!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-24 14:44 , Processed in 0.096081 second(s), 30 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表