LINE(Windows 7以前用を8で使用)のチャットウィンドウ(エディットではなくチャット内容が出る部分)にCtrl+A->Ctrl+Cのようにキー入力を送信しようとしています。
keybd_event()で実行することはできました。しかし、ウィンドウがアクティブでない場合にも実行したいので、SendMessage()にWM_KEYDOWNを使って試しましたが、それではうまくいきませんでした。(チャット内容部分のハンドルが取得できないので、ウィンドウ全体に送信しました。)
おそらくGetAsyncKeyState()などを使っていると思われるのですが、なにか方法はありますでしょうか?
よろしくお願いします。
OS: Windows 8 Pro
IDE: Visual Studio 2013 Professional
言語: C++
LINE: VER 3.7.0.34(2014/6/29現在最新バージョン)
多分関係ないですが、WM_KEYDOWNはWM_KEYUPとセットで使用します
前者がキーを押す操作、後者がキーを離す操作になります
記憶が曖昧ですいませんが、確かCTRLのKEYDOWN→他のキーのKEYDOWN→他のキーのKEYUP→CTRLのKEYUP、と送信しないとダメだったかと
後は送信するたびにSetForegroundWindowするとかでしょうかね
ツイート | ![]() |