質問: Auto Hot Key を用いて入力言語の切り替えを行いたく こちらのサイトを参考にして 以下のスクリプトでロシア語に変更できることはわかりました。 ``` ^j:: PostMessage, 0x50, 0, 0x4190419,, A ; 0x50 is WM_INPUTLANGCHANGEREQUEST Return ``` それで他にも `EN: "0x4090409"`, `UA: "-0xF57FBDE"` などが載っていたのですが、それ以外の言語がわかりませんでした。 またMSDNの`WM_INPUTLANGCHANGEREQUEST`の項目に何かあるかと思ったんですが情報まで辿りつけませんでした。 言語を指定するための定数一覧はどのように探せばよいでしょうか?
回答: 入力ロケール識別子(Input Locale Identifier)は`LoadKeyboardLayout`関数にキーボードレイアウト識別子を渡せば求める事が出来ます。 C#であれば以下のようなコードになります。 ``` var keyboard = "00000409"; // USキーボード var id = LoadKeyboardLayout(keyboard, 1); // 0x04090409 ```