IEの基本スクリプト(CreateOLEObj)

UWSCコバヤシ式にアクセスする基本構文

IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://canal22.org/")
BusyWait(IE)
SLEEP(45)
IE.Quit // IE終了

//------
Procedure BusyWait(ie)
  Sleep(0.5)  // Wait
  Const TIME_OUT = 90
  tm = Gettime()
  repeat
    Sleep(0.2)
    ifb Gettime() - tm > TIME_OUT
      MsgBox("Time Out:BusyWait")
      ExitExit
    endif
  until (! ie.busy) and (ie.readyState=4)
  Sleep(0.5)
Fend
IE.Navigate("about:blank") // INPUT
BusyWait(IE)

解説

初にCreateOLEObjでCOMオブジェクトを作成します。
COMオブジェクト(COMコンポーネント)
Microsoftが提唱するオブジェクトの規格です。

プログラマーになるわけではなければ、
この辺はつっこまなくても良いかと思います。
呪文のように上記スクリプトを覚えれば、UWSCでIEの操作はできます。

ちなみに多くの例文が、IEという変数を使っているので、
インタネットエクスプローラーを扱うなら,
IEとしなければならないような錯覚に陥りますが、
実際は、IEYOUFとしても同様に動作します。

YOUFにしたサンプル

YOUF = CreateOLEObj("InternetExplorer.Application")
YOUF.Visible = True
YOUF.Navigate("http://canal22.org/")
BusyWait(YOUF)
SLEEP(45)
YOUF.Quit // YOUF終了

//------
Procedure BusyWait(YOUF)
  Sleep(0.5)  // Wait
  Const TIME_OUT = 90
  tm = Gettime()
  repeat
    Sleep(0.2)
    ifb Gettime() - tm > TIME_OUT
      MsgBox("Time Out:BusyWait")
      ExitExit
    endif
  until (! YOUF.busy) and (YOUF.readyState=4)
  Sleep(0.5)
Fend
YOUF.Navigate("about:blank") // INPUT
BusyWait(YOUF)

とはいえ、多くの方がIEとしているので、
IEにしておくのが無難です。
で、あとは、
オブジェクトに対してNavigateなどメソッドやプロパティを適用しています。
visibleは可視化でNavigateは移動です。
また、UWSC 上級者ページではCOMに関するさらに詳細な説明があります。

COMコンポーネントの解説は以下のページがわかりやすいです。
http://emeditor.web.fc2.com/EmEditor_Macro_COM_Component.html

関連情報:

  1. COMオブジェクトからInternet Explorerを操作したい
  2. BETWEENSTR
  3. Webページにあるリンクの数を調べたい
  4. 日時を取得する


続きは、ログインもしくは、登録してください



このページの先頭へ