どなたか教えてください。
他のアプリ(Acrobat)などにキーイベントを配送するにはどのように
したら良いのでしょうか?
補足:
ツールのBottom1を押下すると、Acrobatの開く(CTRL+O)実行される。
上記を実現する場合は、AcrobatにどのようにCTRL+Oのキーイベントを配送
すれば良いのでしょうか?
どなたか良いサンプル等を知っていましたらご教授お願いします。
とりあえず,Acrobatにフォーカス与えてkeybd_eventで送ってしまうのがいいかな。
他には,直接Ctrl+Oで発生する(であろう)WM_COMMANDを生成する,という方法もあります。
YuOさん情報ありがとう御座います。
コントロールを押下することは出来るのですが、[O]押下イベント
の指定パラメータ(仮想キーコード&スキャンコード)がわかりません。
どこか調べられるところがありましたら教えてもらえないでしょうか?
keybd_event(VK_CONTROL,0x9d,KEYEVENTF_EXTENDEDKEY|0,0);
/*ここに[O]押下イベントを入れたい*/
keybd_event(VK_CONTROL,0x9d,KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
開発環境は VC++6 Win2000 です
お願いします。
補足:下記の通り記述するとキー配送(CTRL+W)できました。
keybd_event(VK_CONTROL,0x9d,KEYEVENTF_EXTENDEDKEY|0,0);
keybd_event('W',0x00,KEYEVENTF_EXTENDEDKEY|0,0);
keybd_event('W',0x00,KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
keybd_event(VK_CONTROL,0x9d,KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
ですが、スキャンコード(上記0x00の部分)は何を指定するのが正かが
まだ解りません。これでも良いのならいいのですが・・・。
どなたかご教授お願いします。
調べてみたところ,MapVirtualKeyで変換できるようです。
http://www.bcap.co.jp/hanafusa/VBHLP/keybdeve.htm
ただ,大抵全て0で済ましているようです。
ex) http://www.expertmg.co.jp/html/cti/vctips/others.htm
YuOさんへ
教えていただいた資料でもう少し勉強してみて
作ってみます。
ありがとう御座いました。
ツイート | ![]() |