我有两个键盘连接到我的电脑。普通的全尺寸键盘和数字小键盘。我想“重新映射”数字小键盘上的按键,但只留下全键盘。所以,当用户在键盘上按下“5”时,它将被重新映射到“媒体播放”键,但是如果在全键盘的键盘上按下相同的“5”,我会得到“5”。实质上,我想将单独的数字键盘变成媒体控制设备。你可以重新映射特定键盘的键吗?
不幸的是我不知道如何使这项工作。 Windows有一个“原始输入”功能,可以区分键盘,但只允许读取键 - 不能重新映射它们。键盘挂钩(低级别和高级别)可以重新映射按键,但不区分键盘。
我可以结合使用这两种方法吗?为此,我必须确保原始输入消息在键盘钩开始前处理。是这样吗?
另外,我读过Windows出于某种原因不允许在同一个进程中使用Raw Input和Keyboard Hooks。我可以通过创建2个不同的进程来解决这个问题,但由于通信延迟(键盘挂接的时间非常有限,他们必须完成他们的工作)而变得更加脆弱。
这样可以吗?
这是应用公开?这听起来非常有用 – Yary
@Yary - 不,我没有发表过,但需要很多擦亮才能对其他人有用,我已经硬编码了我的键盘硬件ID和密钥映射。 ,如果你想适应自己的需要,你可能只需从头开始编写一个。 –
@Yary - 如果你想要它,那么你可以去http://valts.21.lv/Mediaception.zip 。请记住,您还需要安装驱动程序,您可以从该驱动程序下载上面的拦截网站。 –