delphi – keybd_event中bScan参数值0x45的含义是什么?
发布时间:2020-12-15 09:28:30 所属栏目:大数据 来源:网络整理
导读:使用 keybd_event的 Many examples,bScan参数的值为0x45. 0x45值是什么意思? 我的印象是0x45 was a keyboard scancode,但由于它用于各种数量的键,我不再那么肯定了. 我的目标是使用来自.NET P / Invoke或Delphi的keybd_event,并使类型更具限制性(使用例如枚
使用
keybd_event的
Many examples,bScan参数的值为0x45.
0x45值是什么意思? 我的印象是0x45 was a keyboard scancode,但由于它用于各种数量的键,我不再那么肯定了. 我的目标是使用来自.NET P / Invoke或Delphi的keybd_event,并使类型更具限制性(使用例如枚举或标记的枚举),以便我的代码变得更容易维护. 解决方法
它确实是一个扫描码,对于许多键盘来说,它是NumLock键的扫描码.
附加到keybd_event文档的示例代码是如何切换NumLock状态的示例.因此,自然使用0x45作为扫描码.我的猜测是你发现的很多其他例子只是盲目地复制了keybd_event MSDN示例中的值.从applications typically ignore the scan code开始并响应虚拟键代码,通常作为扫描代码传递的值无关紧要. 最后,您将要使用SendInput而不是keybd_event.原因是前者允许您在队列中放置一系列事件.使用keybd_event,您可以将事件一次放入队列中,并且您的伪造事件可能会散布在真实事件中.而这个问题是引入SendInput的主要原因之一. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |