答えて
少し違っています。私は起動時に現在のlangaugeの設定を希望のものに変更するよりも捕捉します。
alt + shiftの場合でも、希望のタイプに戻すだけです。
ネットフレームワークで行うのは簡単です。ここで
言語を操作する程度の短い記事です:msdna上How to change input language programmatically
そしてメインクラス:InputLanguage documentation
実際にあなたがフックでプレイしなければならないWindowsシステムに移動するALT +シフトを防ぐために。ここで
単なるアイデアです。 WM_KEYDOWN
メッセージをキャッチし、ActivateKeyboardLayoutに電話をかけて言語を切り替えることができます。
VNCクライアントを展開するには、言語の変更を探して、再度変更します。 – Ben
1はhereとフィルタ(伝播しない/飲み込む)キー(s)はあなたが禁止したいが示唆されたようにあなたは、キーボードのフックプロシージャをインストールすることができ、C++を使用しています。
MSDNを理解すると、WM_INPUTLANGCHANGEREQUEST
を処理して何もしないので、Windowsはそれ以上のことを行わず、言語は実際には変更されません。しかし、ユーザーの中にはそれ以上は機能しないと言うユーザーもいます。 http://msdn.microsoft.com/en-us/library/ms632630(VS.85).aspx
たぶん、あなたはITfInputProcessorProfileActivationSink::OnActivated
を実装することができ、あなたが呼び出されるとき、あなたはITfInputProcessorProfiles::ActivateLanguageProfile
を呼び出すことにより、以前の言語に戻って変更することができます。あなたのアプリの冒頭でITfInputProcessorProfiles::GetActiveLanguageProfile
と呼ぶでしょう。
たぶん、あなたはFALSE
から*pfAccept
を設定し、S_OK
を返し、ITfLanguageProfileNotifySink::OnLanguageChange
を実装することができます。 http://msdn.microsoft.com/en-us/library/windows/desktop/ms628770(v=vs.85).aspx
上記のすべてに問題があります。ユーザーが意図的にクライアント上の言語を変更した場合(Alt + Shiftキーを押すのではなく、クライアントのタスクバーをクリックするなど)、上記の方法では変更ができなくなります。
システムがすでに定義されているにもかかわらず、RegisterHotKey
が自分のウィンドウにAlt + Shiftを登録できるのだろうかと思います。
実装しようとしているのはキーボードフックです。C/C++ソースコードと詳細な説明はここで見つけることができます: http://www.codeproject.com/Articles/67091/Mouse-and-KeyBoard-Hooking-utility-with-VC
また、他の有用な例がここで見つけることができます。このことができます
http://www.codeproject.com/Articles/1264/KeyBoard-Hooks
http://www.codeproject.com/Articles/9513/Disable-keyboard-and-show-images-for-the-children
希望。
敬具、
ボー
- 1. リファクタリング私はRubyの1.9.2に</p> <p>を使用していた複数のブロックを含むブロックと方法自体
- 2. 私はまだMisMatchExceptionを試して受け取りましたが、アイデアはありますか?あなたは、try-catchブロックを持っていない<code>finally</code>ブロック、モジュール入力(<code>array[i] = input.nextInt();</code>)を求める
- 3. ajax呼び出しをブロックする方法(ブロックしたい)
- 4. ブロックは、私はMagentoのVAR-1.6</p> <p>を使用しています適切に
- 5. ヘロクのIPアドレスをブロックまたはフィルタリングする方法は?
- 6. アダルトまたはヌード画像のアップロードをブロックする方法は?
- 7. 初期または常時ブロックなしで$ displayを使用する方法
- 8. は、STDの2の補数を取得するための些細な方法は、私は私のプログラムで<code>std::bitset<N></code>を使用して、最下位セットビットを見つけるために必要だったビットセット<N>
- 9. は、GCDを使用してキューにブロックを追加する方法についてアドバイスが必要です
- 10. NSFileHandleのreadabilityHandlerを使用してEnd-of-Fileをチェックする方法は?私は<code>readabilityHandler</code>ブロックを使用して(<code>NSPipe</code>から)<code>NSFileHandle</code>からデータを読んでいます
- 11. 匿名変数には処分されますか?例えば、全く使用してブロックを用いてブロックを使用する明らかな方法、廃棄する(呼び出すための明らかな方法は)
- 12. のJava file.getPathは()私はいくつかのディレクトリがOSXに翻訳されているので、それは常に言語変更パスを返しますが</p> <pre><code>fileChooser.getSelectedFile() </code></pre> <p>メソッドを使用する必要がある言語変更パス
- 13. Moodleのブロック内にブロックのようなスタイリングやブロックを生成する方法はありますか?
- 14. - 私はメインページに</p> <p>をiFrameにするために行くために<code>Driver.switchTo().frame("XXXXX");</code>を使用している
- 15. は、どのように私は1つだけで、独自の救助ブロックを使用しない方法レスキュー終了</p> <p>を開始した標準的な技術を知っているの開始と終了ブロック
- 16. C#でAutoResetEventまたはManualResetEventのブロック状態をチェックする方法は?
- 17. <hr>および<br>はインライン要素またはブロック要素ですか?
- 18. ブロックiがsitebuilding->ブロック - > addblock</p> <p>介していくつかの情報を有するブロックを追加し、ヘッダ</p> <p>としての領域を選択したDrupalの
- 19. C言語でtry-catchブロックを使用する正しい方法は何ですか?
- 20. スパマーをブロックするためにDNSBLを使用してウェブトラフィックをチェックする必要がありますか?
- 21. <audio>ブロックをポップとクリックしないで1つずつ再生する方法は?
- 22. VB6またはC#または新しいプログラミング言語にQuickBasicコンバータが必要
- 23. 非同期ブロックが与えられたとき、ブロックがいつ完了するかを知る方法は?
- 24. C#でテストするための内部メソッドをいくつか保持するインターフェイスを作成するには?あなたはそれが<code>public</code>方法と<code>internal</code>方法を持って見ての通り
- 25. label1のテキストをブロックする方法を変更するn gridview1のチェックボックスがオンになっている場合はブロックを解除しますか?
- 26. linuxのrecv()またはrecvfrm()関数のブロックを解除する方法C
- 27. アンドロイドアプリケーションを閉じるためにすべての方法をブロックする
- 28. 内部のすべてのリクエストをブロックする方法<iFrame>
- 29. 要素のjqueryをブロックする方法
- 30. Drupal 7のブロック構成フォームを変更する方法は?
は、Windowsについて話していますか?その場合は、適切なタグを追加します。 – Shahbaz
これを行うと、ユーザーは情熱をもってあなたを憎むでしょう。あなたはそれをしてもよろしいですか? – SigTerm
はい。やった。おかげで –