スクリーンキーボードのユーティリティを作っています。
表題のとおり、フォアグラウンドウィンドウのIME入力モード(最低限On/Off)を調べて表示して置きたいと考えています。
以下の方法を試しましたが上手くいきません。
・getkeyで0xF3、0xF4を拾う
→ウィンドウを切り替えたときに更新されない
・ImmGetOpenStatus(imm32.dll)を使う
→他プロセスのIMEコンテキストは取れない仕様だそうです
(ダメ元でAttachThreadInputも使ってみましたがダメでした)
・External IME ControlerというDLLを使う
→これも"状態が変化した"メッセージを拾うだけで状態の取得は無理そう
他の方法をご存知の方、アイデアをお持ちの方、どうか知恵を貸してください。