2012-04-11 8 views
1

それはSendMessagePostMessage APIせずにプログラムにキーを送信することは可能ですか?のSendMessageとのPostMessageせずにキーを送る

+0

これらの特定のapiを使用していないメソッドはありますが、最終的にはメッセージキューを使用してキーが送信されます。なぜそれらを直接使用しないのですか? – Cray

+0

それだけでWM_CHARメッセージを投稿/送信するためにとても簡単ですので、私は何か他のものを試したことがありません。 –

答えて

16

偽の入力に公式の方法は、直接Windowsメッセージを送信または投稿は含まれません。代わりにSendInputに電話することを意味します。

あなたがSendInputを使用する場合、それは実際に本物のキーを押すと区別がつきません。あなたが偽のキーボード入力にSendInputを呼び出すと、システムは、最終的にキーボードフォーカスを持つウィンドウを作成したフォアグラウンドスレッドのメッセージキューにメッセージをポストします。

+0

"区別できない":高度なボットプロテクションを持っている多くのポーカークライアントは、それに同意しない傾向があります:)。しかし一般的に、通常のプログラムでは違いはありません。 – Cray

+0

@Crayポーカークライアントはどのように違いを感じますか? – Alex

+0

私はこれを研究していた最後の(たとえば数年前のカップル)は、GetAsyncKeyStateの話がたくさんありました、そしてどのようにSendInputは、その機能をだますことはできません。しかし、これは明らかにチェックの最も簡単な方法の1つでした(これは文書化されたring3関数でも、それについては何も卑劣なものではありません)。 – Cray

関連する問題