再現可能なバグに遭遇しましたが、これは私には意味がありません。うまくいけば、誰かが Windows (私は Windows 7 を使用しています) でのキーボード入力の内部について詳しく知っていて、それを解決する方法について正しい方向に向けることができます。今のままでは、どこに目を向ければよいのかよくわかりません。
私のアプリケーションは、 MouseKeyboardActivityMonitorライブラリを使用して、グローバル キーボード フックを作成します。これは私にとっては問題なく機能していましたが、別のキーボード入力言語を使用している人々からすぐにバグ レポートを受け取りました。ë や ê などのアクセント付きの文字を書くと、それぞれ ¨¨e や ^^e と表示されます。このバグは図書館のウェブサイトでも報告されていますが、まだ解決されていません。
バグを再現するために、既存の「英語 (米国)」の隣に「オランダ語 (ベルギー)」という別の入力言語を設定しました。いろいろいじってみたところ、次のことがわかりました。
フックをインストールするアプリケーションにフォーカスがあり、言語が 'English (United States)' に設定されている場合、バグは発生しません。他のアプリケーション (メモ帳など) で書き込み、「オランダ語 (ベルギー)」を使用して特殊文字を書き込めます。このバグは、フックをインストールするアプリケーションにフォーカスがあり、言語が「オランダ語 (ベルギー)」に設定されている場合に発生します。
両者の関係について、何らかの手がかりを探しています。おそらく、キーボード フック ライブラリに追加のチェックを導入する必要がありますか? キーボード フックのソース コードは、オンラインで入手できます。