“自定义”键盘布局的安全 KLID?

问题描述 投票:0回答:1

我需要在 Windows 10 上安装多个“自定义”键盘布局。 这些不是 MKLC 生成的布局。

什么是可用于我的布局的“安全”KLID?

axxxxxxx 似乎是 MKLC 使用的。 Dxxxxxxx 似乎被布局预加载/替换所利用

我有几个键盘布局要安装,即,??????0409,??????0407,??????040e,.....

对于“???”的相对“安全”值有什么想法吗? ?

我担心会遇到别人的键盘布局。

谢谢

winapi visual-c++ windows-10 custom-keyboard keyboard-layout
1个回答
1
投票

KLID — 键盘布局标识符.... 可以通过 GetKeyboardLayoutName API 在线程中检索当前选定键盘布局的 KLID(请注意 pswzKLID 参数),但对于任何其他选定的或安装的键盘布局。系统上的每个键盘布局都有其中之一。每个 KLID 都是 32 位(即 8 个十六进制数字),它们都可以作为

HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\
下的子项在注册表中找到。 KLID 的下半部分是 LANGID,上半部分是特定于设备的内容。按照惯例,第一个十六进制数字通常如下:

  • 0 — 大多数键盘布局
  • A — 由 MSKLC
  • 定义的键盘布局
  • B — 由 KbdEdit
  • 定义的键盘布局
  • D — 文本服务框架定义的一些非 CJK 输入法(注:向我报告;我从未见过其中之一!)
  • E — CJK 输入法,也称为 IMM32 IME自 Windows 8 起已弃用且不再工作

看起来您可以使用

1
..
9
С
F
十六进制作为前缀。

来源:http://archives.miloush.net/michkap/archive/2005/04/17/409032.html

© www.soinside.com 2019 - 2024. All rights reserved.