Win10上,请问怎么使用C语言做到调用键盘驱动来实现硬件级的模拟输入,用keybd_event是无效的

yyxgs 2020-02-12 08:07:34
在Windows上有的游戏,用模拟键盘会无效,但是真实键盘可以,难道游戏还能判断你是用的真键盘还是用代码模拟的键盘消息?
...全文
1040 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
psbeond 2022-04-21
  • 打赏
  • 举报
回复

键盘按键后,键盘驱动把按钮扫描码发给操作系统,操作系统把扫描码转成虚拟键码,生成一个windows消息,如WM_KEYDOWN传给应用程序。有些游戏直接从底层得到按键,不经过上层的windows消息,所以,采用上层的keybd_event来模拟按钮,游戏是不识别的。

yyxgs 2022-04-26
  • 举报
回复
@psbeond 那这种情况该怎么做才能解决这个问题呢
yyxgs 2020-06-21
  • 打赏
  • 举报
回复 1
我觉得向日葵真的是挺强大的
yyxgs 2020-03-26
  • 打赏
  • 举报
回复
引用 2 楼 scutth 的回复:
有些游戏或者应用程序,为了安全考虑,会hook键盘驱动,在键盘驱动之上还有一个filter driver,比较底层,应用接受的键盘event都是来自于filter driver。应用层模拟的键盘event压根就不会被收到,自然不会有响应。以上纯属个人理解,欢迎讨论。


谢谢
scutth 2020-03-25
  • 打赏
  • 举报
回复
有些游戏或者应用程序,为了安全考虑,会hook键盘驱动,在键盘驱动之上还有一个filter driver,比较底层,应用接受的键盘event都是来自于filter driver。应用层模拟的键盘event压根就不会被收到,自然不会有响应。以上纯属个人理解,欢迎讨论。
yyxgs 2020-02-15
  • 打赏
  • 举报
回复
有大神吗???????????????

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧