2011-08-07 6 views
4

私はこれまで使用していたAPI(SendInput()、PostMessage()、SendMessage()など)に応答しないアプリケーションにキーを送信しようとしています。しかし、私はWindowsのオンスクリーンキーボードユーティリティをテストし、必要なキーを押したので、アプリケーションはこれらのキーを簡単に受け取った。グローバルキーボードフックを使用してキーを送信するにはどうすればよいですか?

私が正しく理解しているのであれば、キーボードユーティリティはグローバルキーボードフックを使ってキーを送信するので、どうすればいいのか興味があります。私はどのようにこれはGoogle上で行うことができますが、結果が出てきているの例を見つけるしようとしました。

ありがとうございました。

答えて

2

フックは、新しいイベントを送信するのではなく、イベントをインターセプトするために使用されます。だからあなたが求めているのはフックでは不可能です。 SendInputが行く方法です。たぶんあなたは何か間違ったことがあったので、うまくいかないコードを投稿して何が間違っているのかをデバッグする方が良いでしょう。

2

私はそれを解決しました。私はDirectXアプリケーションにキーを送信していました。私は、通常のVK_KEYの代わりにDirectXのスキャンコードを送信しなければならなかったことが分かります。

スキャンコードのリストを見つけることができます:SendInput(でこれらを使用してhttp://www.gamespp.com/directx/directInputKeyboardScanCodes.html

)、すべてがとてもうまくいきました。

ありがとうございました。

乾杯。

関連する問題