0

選択したキーボード レイアウトによって動作が異なるアプリケーションを作成しています。私は検索してきましたが、そのアプリケーションのレイアウトが変更されるたびにアプリケーションが受け取るメッセージがあることがわかりました(レイアウトが変更されたときにフォーカスがある場合、本質的にWM_INPUTLANGCHANGE )。

しかし、私が望むのは、そのアプリケーションにフォーカスがある場合だけでなく、キーボード レイアウトが変更されるたびに通知されることです。たとえば、Word で作業しているときに変更が発生した場合などです。

それが可能かどうか誰にもわかりますか?メモリ内の関数呼び出しまたはプロセスをフックしている可能性があります (これが可能かどうかさえ知らずに話しています)。

4

1 に答える 1

1

Michael Kaplan は、2006 年にこれらのメッセージが壊れたことについてブログに書いています。

http://www.siao2.com/2006/05/16/598980.aspx

彼は、テキスト サービス フレームワークから直接通知を取得する方法について説明し、壊れている MSDN へのリンクを提供します。これは互換性があると思います:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms629032.aspx

彼が言及しているサンプル コードは、そのページのリンクにあります。

これはグローバルに機能しますか? 私はテキスト サービス フレームワークについて十分に理解していませんが、ここから始めるのがよいでしょう。

于 2013-03-21T16:38:07.163 に答える