我正在用C#编写一个在后台运行的程序,并允许用户使用热键在活动窗口中切换键盘布局.(Windows仅支持CTRL+ SHIFT和ALT+ SHIFT)
我正在使用RegisterHotKey来捕获热键,它运行正常.
问题是我找不到任何API来改变聚焦窗口的键盘布局.
ActivateKeyboardLayout和LoadKeyboardLayout只能更改调用线程的键盘布局.
有谁知道如何更改不同线程的键盘布局(语言栏的方式)?
PostMessage(handle, WM_INPUTLANGCHANGEREQUEST, 0, LoadKeyboardLayout( StrCopy(Layout,'00000419'), KLF_ACTIVATE) );