搜索
查看: 1707|回复: 8

监视按键例子发现一个现象

[复制链接]

13

主题

61

帖子

434

积分

二级会员

Rank: 3Rank: 3

积分
434
发表于 2017-10-11 20:57:47 | 显示全部楼层 |阅读模式
范例程序\模拟自动化\鼠标按键\监视按键,当程序运行后焦点切换到记事本中,这时按键后第一个按键没有监视到,后面按键的正常
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13974
发表于 2017-10-11 23:00:52 | 显示全部楼层
不同操作系统下测试该范例,没有发现丢失第一个按键。
请仔细检查是否有误操作,或补充重现问题的信息,另请注意:BUG,意见建议等请一律点此链接提交
回复

使用道具 举报

13

主题

61

帖子

434

积分

二级会员

Rank: 3Rank: 3

积分
434
 楼主| 发表于 2017-10-12 09:35:04 | 显示全部楼层
昨天用的是xp,今天用win10没有这个现象
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13974
发表于 2017-10-12 09:57:13 | 显示全部楼层
csdn321 发表于 2017-10-12 09:35
昨天用的是xp,今天用win10没有这个现象

感谢反馈!

昨天我已经用XP测试过了是好的。
今天再用XP测试了一下,仍然是好的。

检查了 key.hook 的代码,
暂未发现逻辑上的错误。
回复

使用道具 举报

7

主题

51

帖子

410

积分

培训班

积分
410
发表于 2017-10-12 11:01:14 | 显示全部楼层
QQ拼音输入法 第一个字母输入无响应。英文状态下都正常的
回复

使用道具 举报

7

主题

51

帖子

410

积分

培训班

积分
410
发表于 2017-10-12 11:08:17 | 显示全部楼层
win.rawInput 库没有这个现象
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13974
发表于 2017-10-12 11:26:04 | 显示全部楼层
zhoubujin 发表于 2017-10-12 11:01
QQ拼音输入法 第一个字母输入无响应。英文状态下都正常的
按你说的,再次下载QQ拼音输入法测试,无此问题。

你可以用 key.hook 下钩子拦截消息不发给别的软件,那么别的软件同样可以拦截键盘消息不发给你(或者只是其他软件的BUG)。 win.rawInput没有可比性,他只是单纯的读输入,又不是钩子函数。

即然你只是第一个键收不到,
那么说明你键盘钩子安装成功了(不然不可能收到后面的消息)
而 key.hook 里似乎并没有忽略第一个按键的相关代码。
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13974
发表于 2017-10-12 11:36:49 | 显示全部楼层
换 XP系统,安装QQ拼音输入法测试,也没有这个问题。
可以看看是不是其他软件导致。
回复

使用道具 举报

13

主题

61

帖子

434

积分

二级会员

Rank: 3Rank: 3

积分
434
 楼主| 发表于 2017-10-12 22:42:15 | 显示全部楼层
加了调试信息后发现第一次按键进入了回调函数时
var kn = key.getName( vkcode );
这句代码中的vkcode是0,所以kn也就没取到
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-12-18 23:23 , Processed in 0.062500 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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