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

タイトル Re: SendInput検索中
投稿日: 2012/06/05(Tue) 19:01
投稿者魔界の仮面弁士
> これを使ってどうやって文字を送り込むのかがわかりません
さして珍しい API では無いですし、サンプルや解説記事は、国内外・VB/非VB を含め
比較的容易に見つけられると思います。

実際、検索エンジン等でそれらを探し当てることろまではできていると思いますが、
そこからさらに進んで、それらを調査・実験してみたうえで、
具体的にどの部分が理解できないのか、あるいは、その API を使うために
どういった情報・資料を欲しているのかなど、不明な点をより具体的に質問してみてください。

まずは、ここのサイトのサンプルでいうとこのあたりでしょうか。
http://hanatyan.sakura.ne.jp/vbhlp/SendInput.htm
http://hanatyan.sakura.ne.jp/vbhlp/SendMous.htm

VB から FireFox を制御するという事例は、IE の操作事例に比べると少ないので、
Firefox に限定した具体的なコードというのは、そうそう無いと思います。
各種情報をかき集めて、try & error でチャレンジしてみてください。


> SendInput(入力イベントの数,挿入する入力イベントの配列,構造体のサイズ)
> という引数まではわかったのですが 
この場合のイベントとは、キーボード操作やマウス操作を表す共用体な構造体です。

もっとも、VB6で共用体は作れないので、バイト配列で代用するか、もしくは、
マウス用とキーボード用とで、個別のユーザー定義型を用意することになるでしょう。

具体的なコードは、上記の URL を参考にしてみてください。
サンプルコード中で不明な点があれば、その点を質問してみてください。


> これを使ってどうやって文字を送り込むのかがわかりません
文字を送り込むというか、マウス操作/キーボード操作をエミュレートするというものですね。

たとえば、テキストボックスをクリックして "abc" と入力するために、
 ・マウスカーソル位置を絶対座標指定で移動
 ・左マウスボタンを押す
 ・左マウスボタンを離す
 ・aキーを押す
 ・aキーを離す
 ・bキーを押す
 ・bキーを離す
 ・cキーを押す
 ・cキーを離す
という 9 要素の構造体配列を渡すことになります(1個ずつ9回呼んでも良いですけど)。

ただしこの時、Caps Lock の状態も調べておかないと、"abc" ではなく
"ABC" になるかも知れませんので、注意しください。

(あるいは、多少行儀が悪いですが、クリップボード経由で送り込むという手法も)

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

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