Безопасный KLID для «пользовательской» раскладки клавиатуры?

Мне нужно установить несколько «пользовательских» раскладок клавиатуры в Windows 10. Это не сгенерированные MKLC раскладки.

Что такое «безопасный» KLID для моих макетов?

axxxxxxx, кажется, используется MKLC. Dxxxxxxx, по-видимому, используется в макетах PreLoad / Substitues.

Мне нужно установить несколько раскладок клавиатуры, например, ????0409, ????0407, ????040e, .....

Любые идеи относительно «безопасного» значения для «????» ?

Я боюсь столкнуться с чужой раскладкой клавиатуры.

Спасибо


person RSullivan    schedule 13.01.2021    source источник
comment
Этот вопрос кажется продолжением предыдущего вопрос. В чем разница между ????0409 и 00000409, полученными GetKeyboardLayoutName?   -  person Strive Sun    schedule 14.01.2021
comment
Это НЕ продолжение. Посмотрите в реестре. Все, что заканчивается на «0409», является английской раскладкой, 0000409 (KBDUS.Dll), 0010409 (KBDDV.Dll), 00020409 (KBDUSX.Dll) и так далее. Это просто стандарты, установленные Windows. a0000409 будет «Пользовательским» макетом, созданным в MKLC. dxxx0409, кажется, зарезервирован для заменителей. Я боюсь установить свои раскладки с KLID, скажем, «01000409», а позже обнаружить, что это противоречит какой-то существующей схеме раскладки клавиатуры. Я ясно выражаюсь?   -  person RSullivan    schedule 15.01.2021
comment
Нет документа, указывающего, что будет использоваться пользовательская раскладка клавиатуры, например «01000409». Согласно макету реестра, KLID будет увеличен в соответствии с потребностями других языков. Итак, есть две возможности. Во-первых, в будущем Microsoft может занять эту позицию из-за языковых потребностей. Вторая возможность заключается в том, что это место могут использовать сторонние инструменты.   -  person Strive Sun    schedule 15.01.2021
comment
Да стремиться. Это очевидно для меня. Глядя на высокие слова, кажется, что Microsoft использует от 0000 до 0015 при стандартной установке. d000, кажется, используется для замены. a000 используется MKLC с дополнительным параметром реестра «Layout Id» в ключе. Да, документации нет (это моя проблема). Мне кажется, что в использовании нет ни рифмы, ни причины (например, 00010407 - немецкий IBM, 00010409 - американский Дворак, а не американский IBM). Я верю, что конечным результатом моего вопроса будет то, что никто не знает.   -  person RSullivan    schedule 15.01.2021