Я пытаюсь настроить языковую панель (переключатель языка в systray, который появляется, когда у вас установлено несколько языков ввода) для наших пользователей.
Я легко могу добавить новые языки, используя regkeys ниже HKCU, но проблема в том, что пользователь должен перезагрузить или перезагрузить свой компьютер, чтобы увидеть эффект.
Ключи, которые я использую (я пишу их с активной настройкой), находятся в «HKEY_CURRENT_USER\ Раскладка клавиатуры \ Предварительная загрузка», ниже этого ключа указаны имена / значения типа REG_SZ.
Обычно уже есть такие клавиши, как "1" = "0000407" "2" = "0000409", что означает, что у пользователя установлена немецкая и английская раскладки клавиатуры, если я хочу добавить, скажем, итальянский, я бы добавил клавишу "3" = "0000410". после следующего входа / выхода изменения видны пользователю.
Теперь то, что я уже пробовал, это отправка различных сообщений Windows, таких как WM_SETTINGCHANGE или «RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters ", но пока бесполезный результат.
У меня заканчиваются идеи, поэтому выход из системы сотен пользователей / вход в систему не будет таким уж большим:/
Я также думал об автоматизации мышиных кликов (например, с помощью autoit), но это обычно вызывает больше проблем, чем пользы.