0

“重新映射”是指使用 Windows 功能自动将扫描码转换为其他扫描码。这是通过 KeyTweak 等工具配置的,或者直接通过编辑某个注册表项来配置。

如果您使用 WM_KEYDOWN 消息和朋友,您将获得正确重新映射的键。DirectInput 也是如此。但原始输入并非如此。有没有办法获得重新映射的密钥?我不需要原始的扫描码或 VK 码,只需要重新映射的。

MSDN 说 DirectInput 在用于键盘输入时是原始输入的包装器。但不知何故,DirectInput 为您提供了重新映射的键,而 Raw Input 却没有。

4

1 回答 1

1

我的猜测是 DI 在初始化时会从注册表中读取 Scancode Map 值,并在内部翻译键码。是一些关于“Scancode Map”注册表值的旧但仍然正确的文档。

于 2011-10-29T23:50:29.250 回答