Изменить раскладку клавиатуры для другого процесса

Я пишу программу на C #, которая работает в фоновом режиме и позволяет пользователям использовать горячие клавиши для переключения раскладок клавиатуры в активном окне. (Windows поддерживает толькоCTRL+СДВИГ а такжеALT+СДВИГ)

Я использую RegisterHotKey, чтобы поймать горячую клавишу, и она работает нормально.

Проблема в том, что я не могу найти API для изменения раскладки клавиатуры для сфокусированного окна.

ActivateKeyboardLayout и LoadKeyboardLayout могут изменять только раскладку клавиатуры для вызывающего потока.

Кто-нибудь знает, как изменить раскладку клавиатуры для другого потока (как это делает языковая панель)?

Ответы на вопрос(4)

Ваш ответ на вопрос