Tastaturlayout für anderen Prozess ändern

Ich schreibe ein Programm in C #, das im Hintergrund ausgeführt wird und Benutzern die Verwendung eines Hotkeys zum Wechseln der Tastaturlayouts im aktiven Fenster ermöglicht. (Windows unterstützt nur STRG+VERSCHIEBUN und ALT+VERSCHIEBUN)

Ich benutze RegisterHotKey, um den Hotkey abzufangen, und er funktioniert einwandfrei.

Das Problem ist, dass ich keine API zum Ändern des Tastaturlayouts für das fokussierte Fenster finden kann.

ActivateKeyboardLayout und LoadKeyboardLayout können nur das Tastaturlayout für den aufrufenden Thread ändern.

Weiß jemand, wie man das Tastaturlayout für einen anderen Thread ändert (wie es die Sprachleiste tut)?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage