web-dev-qa-db-ja.com

AEをæ、OEからœに変換するようにコンピュータを設定するにはどうすればよいですか。飛ぶのに?

いくつかの言語は、いくつかの単語/文字が 自動的に組み合わされて それらが型付けされているように、例えばアラビア語などのようなものを理解しています。

私はあなたがWindows用のあなた自身のキーボード言語レイアウトを作成することができます(マイクロソフトキーボードレイアウト作成者)

私はソフトウェア開発者ですので、必要な場合はコードを入れるのが恥ず恥ずかしがり屋ではありませんが、どこに始まるのかはわかりません。私はまだ私のイギリスの英語のキーボードのレイアウトを維持したいが、これらの追加で。はい、これは目新しさのためのものです。

4
WHol

しかし、私はどこに始めるべきかはわかりません、私はこのようなものをすでに存在させたいと思います。

そしてあなたは賭けを勝ちました!探している解決策はaと呼ばれます global keyboard hook

C#をプログラミングできる場合は, これがそれを行う方法の例です

私はそのようなフックをCに書いたが、これは今日では必要ではありません、C#を手に入れることができます。

そのようなフックの働きはかなり簡単です:あなたのプログラムは彼らが行われる前にすべてのキーボードイベントを手に入れよう!たとえば、「a」と「e」を取得した場合は「æ」または「何でも」を書いている場合は、閉じ込められた文字を「マッピング」できます。

フックはWindowsの最も強力な機能の1つです。 Windows環境ですべてのイベントをトラップするようにフックできます。

Microsoft®Windows™オペレーティングシステムでは、フックは、アプリケーションに到達する前に、関数がイベント(メッセージ、マウスアクション、キーストローク)を傍受できるメカニズムです。この機能はイベントに作用し、場合によってはそれらを変更または破棄することができます。イベントを受信する機能はフィルタ機能と呼ばれ、切身のイベントの種類に従って分類されます。たとえば、フィルタ機能はすべてのキーボードまたはマウスイベントを受信したい場合があります。 Windowsの場合は、フィルタ機能を呼び出すには、フィルタ機能をインストールする必要があります。つまり、Windowsフックに(たとえばキーボードフックに)接続されています。フックの設定として、1つ以上のフィルタ機能をフックに取り付けることが知られています。フックに複数のフィルタ機能が接続されている場合、Windowsは一連のフィルタ機能を管理します。最後にインストールされている機能はチェーンの先頭にあり、最近インストールされている機能は最後にあります。

フィルタ機能を維持してアクセスするために、アプリケーションはsetWindowshookexを使用します(== --- ==)UNHOOKWindowshookex関数。

1
duDE