tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル 指定のハンドルに矢印キーの送信 postmessage
投稿日: 2018/08/14(Tue) 16:42
投稿者jusu
お世話になります。
ある、パッケージアプリがあり、そこへの入力をある程度自由化しようと試みています。
ターゲットウィンドウ(キャプション hogehoge)には、
選択項目が3つあり、下段に OK、キャンセル、ヘルプボタンがあります。

hogehoge
-------------------------(1)
-------------------------(2)
-------------------------(3)
[OK] [キャンセル] [ヘルプ]

ここで、1〜3を選択するのは矢印キー上下か、マウスクリックです。
矢印キーの入力を自動化できないかと思っています

hWnd = FindWindowEx(0, 0, "ウィンドウクラス", "hogehoge") 'このウィンドウを選択
Cwnd = GetWindow(hwnd, 5)
Cwnd = GetWindow(Cwnd, 2)  
冗長ですがこんな感じで、(1)(2)(3)ウィンドウハンドルを取得しました

そこで、矢印キーを送信したのですが選択肢が動きません
Ret = PostMessage(Cwnd, WM_KEYUP, VK_DOWN, 1)

結果をspyで見ました
プログラム結果
Cwnd P WM_KEYUP nVirtKey:VK_DOWN cRpeat:1 ScanCode:00 fExtended:0...
直接下矢印を押した結果
Cwnd P WM_KEYUP nVirtKey:VK_DOWN cRpeat:1 ScanCode:50 fExtended:1 ...
Scancode? Extennted ?

何かヒントでもありましたらお願いします。

ちなみに、OKボタンは、OKボタンのハンドルを取得して
lngRet = SendMessage(Mwnd, BM_CLICK, 0, 0) にて押すことができます。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。