初めて投稿します。質問内容は下記のとおりです。
VBでCreateProcessを使ってソフトのインストーラを起動して
ウインドウが表示されたらウインドウテキストを確認して[Enter]
{Tab + Enter]とインストールを続けていくプログラムを作ってい
ます。
今はSendKeysを使っているのですがキャンセルとかをクリック
されると困るので、インストール中とでかくフォームを作って
その後ろで動かしたいんです。
そうなるとSendKeysが使えないので、SendMessage関数を使えば
できるようなことを聞いたのですが、どんなメッセージを送れば
いいかわかりません。似たようなサンプルプログラムがあって
FindWindowを使ってハンドルを取ってきているところまでは
分かるのですが、[次へ]や{OK]のボタンをクリックするのに
なんのメッセージを送るかが分かりません。
申し訳ありませんが分かる方がいましたらよろしくお願いします。
ボタンを押すのは、WM_LBUTTONDOWNとかかな?
ボタンのクラスは、FinderSystemとかで調べるといいでしょう。
http://www.h3.dion.ne.jp/~hanagex/
まあ、どうせボタンのクラス名なんて、決まってますよね
キャプションを指定しておけば、とりあえずは大丈夫かも?
(意地悪なユーザーのために、失敗したときの措置も考えておいたほうがよさそうですが)
たかみちえさんどうもありがとうございました。
すごく便利なツール教えていただいてありがとうございました。
EnumWindowsと併用してやってみます。
ありがとうございました。
ツイート | ![]() |