マウス・キーボードイベントを取得して、反映させるには?
マウス・キーボードイベントを取得して、
後で反映させるプログラムの作成をしたいと考えています。
今、私が考えているのは、
OnKeyDown()やOnKeyUp()などの関数の引数をテキストファイルに保存して、
そのファイルを呼び出して、もう一度、OnKeyDown()やOnKeyUp()などの関数を
使用する、ということを考えているのですが、
それ以外にもっといい方法はあるのでしょうか?
対象次第だと思います。
自プログラムが対象であれば,Commandパターンそのものということになります。
YuOさん、アドバイスありがとうございます。
ネットワークプログラミングについての質問のときにも、
アドバイスをいただいて、とても勉強になりました。
今回、私がやりたいのは、マウス・キーボードイベントの自動化です。
一度やったことを記憶して、
次回からは、やったことを記憶したファイルを参照するだけで
すむようなものを作成したいと考えています。
自分で書いたものを参照するのも何ですが、
>そのファイルを呼び出して、もう一度、OnKeyDown()やOnKeyUp()などの関数
では、マウス・キーボードイベントの反映はできないように思います。
(それに気づいて、すぐに戻ってきたらYuOさんのアドバイスがあったので驚きました)
マウス・キーボードイベントの自動化をしたい場合のイベントの反映というのはどのようにすれば実現ができるのでしょうか?
とら
何度もすみません。とらです。
>自プログラムが対象であれば
自プログラムが対象では、ありません。
ディスクトップ画面での操作を自動化させたいと考えています。
keybd_event←こんなんでどう?
ハンドル取得してSendMessageする方法もあるけど、対象アプリがGetKeyStateとかでバッファを直接取得していたら動かない。あとDirectInput系も動かない可能性アリ...
AUT`sさん、はじめまして、アドバイスありがとうございます。
keybd_event・mouse_eventですね、調べてみます。
SendMessageの方は、全く聞いたことがありませんでした、こちらも調べてみたいと思います。もし、詳しく書いてあるページがありましたら、教えていただきたいと思います。
AUT`sさん、本当にアドバイスありがとうございました。これからもよろしくお願いします。
とら
とらです。
AUT`sさんのアドバイス通り、keybd_eventを使っているのですが、
EscとEnterは、うまく反映できたのですが、
半角/全角キーの取得と反映がうまくいきません。
どのようにすれば実現ができるのでしょうか?
> 半角/全角キー
多分IMEの起動をエミュレートしたいんだと思うけど、どうなんでしょ?
ちなみにIMEは全半キーでは起動しないので注意しま。
> SendMessage
いや、対象のアプリがWM_KEYDOWNとかで処理してるなら、
ハンドル取得してSendMessageしてやればいいかなと思うただけ。
ってか、API全然知らないでしょ?
大雑把でいいから、どんな事ができるか一覧を眺めるのもいいかもね〜
ちょっち敷居が高いと思うけど、他プロセスからIMEをさわるサンプルぽいもの?
http://www.zero.co.jp/develop/free/o1/index.html
AUT`sさん、何度もアドバイスありがとうございます。
>多分IMEの起動をエミュレートしたいんだと思うけど
そうです。
>ちなみにIMEは全半キーでは起動しないので注意しま。
そうだったのですね。勉強不足でした。
”IMEの起動をエミュレートするには”についてと
”他プロセスからIMEをさわるには”について調べてみたいと思います。
とら
AUT`sさんのアドバイスのおかげで、
短時間で、IMEの起動をエミュレートを実現することができました。
AUT`sさん、本当にアドバイスありがとうございました。
これからもよろしくお願いします。
とら
keybd_event・mouse_eventを使用して、
実現させることができました。
YuOさん、AUT`sさん、アドバイスありがとうございました。
とら