ここから本文です

【至急500枚】 UWSCについての質問です。

qwe********さん

2016/12/1317:44:49

【至急500枚】

UWSCについての質問です。

IE = CREATEOLEOBJ("InternetExplorer.Application")
IE.visible = true
IE.navigate("http://〇〇〇〇〇.com/")
REPEAT
SLEEP(0.1)
UNTIL !IE.busy AND IE.readystate = 4
BTN(LEFT,CLICK,461,402,1)
KBD(VK_ALT,DOWN,1)
KBD(VK_2,CLICK,1)
KBD(VK_ALT,UP,1)
KBD(VK_TAB,CLICK,1)
KBD(VK_RETURN,CLICK,1)
REPEAT
SLEEP(0.1)
UNTIL !IE.busy AND IE.readystate = 4
KBD(VK_A,CLICK,1)

↑このように書いてもページが読み込み完了する前に次の動作が実行されてしまうことがあります。
正しいコードわかる人いたらお願いします。。。

UNTIL !IE.busy AND IE.readystate = 4
のあとにSLEEP(10)おいてなんとかしのいでますが、それでも度々ずれてしまいます。よろしくお願いします。

閲覧数:
134
回答数:
3
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

uso********さん

2016/12/1415:58:26

UWSCでIEのイベントを拾う方法なら公式
サンプルにありますよ。以下のページ内を
http://www.uwsc.info/sample.html
DocumentComplete
でページ内検索すれば、OleEvent()している
行が見つかる筈です[リロード時はDownload
Completeイベント見なきゃとか、複数フレーム
あるページだと複数回イベントが起きたりとか
色々注意事項はあるようですが]。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

kum********さん

2016/12/1408:41:52

http://canal22.org/kansu/comobjectfunctions/
https://msdn.microsoft.com/en-us/library/aa768283%28v=vs.85%29.aspx
>OLEEVENT

この辺を見るとイベントに対応出来るのでは思うが、どうだろう。

jun********さん

2016/12/1406:57:18

残念ながら、UWSCではそれ以上の方法はありません。抜けがあっても、騙し騙し使うしかないのです。

VBAならば、下記のページにあるような方法があるようですので、VBAでIEを動かし、BTNやKBDはUWSCで動かす、といった方法にする案もあります。
http://language-and-engineering.hatenablog.jp/entry/20100410/p1

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる