読者です 読者をやめる 読者になる 読者になる

kiyo_hikoのブログ

メモ+日記?

UWSCを少し勉強した

VBA/VBS/UWSC

今週末は療養で色々休んだ。PCをつかった。UWSCを使った。
昔作ったユーティリティを使い続けているので使い方をだいぶ忘れていた。
wwwの特定の起点からリンクを辿って情報を拾ってくるスクリプトを作っていたが、いくぶん改修した。

今までの動作

1.起動
2.起点のURLを入力
3.IEのウィンドウアクティブに
4.巡回
5.UWSCが終わってるの確認したら手動で閉じる


問題点としては巡回時に毎回IEのウィンドウが出てウザいこと、終了が手動なことで、その辺をウザくないように改修。

改修後動作

1.起動
2.起点のURLを入力
3.IEのウィンドウ最小化状態でひっそり起動
4.巡回
5.UWSCが終わったら勝手に閉じる

CtrlWin関数

ウィンドウのスタイルを制御できる。これはウィンドウIDとコマンドを渡すらしいので、IEのIDを渡して最小化する。

CreateObjectでハンドルが返るからIDに変換しなくちゃいけない。こんな感じ↓

Dim ie = CreateOleObj("InternetExplorer.Application")
CtrlWin(HndToID(ie.hWnd), MIN)
ie.visible = True
ie.Navigate(url)

Quitメソッド

終了時はieオブジェクトのQuitメソッドを呼ぶだけ。

ie.Quit

便乗でメモ

Emacsではvisual-basic-mode使えばUWSCの文法にかなり近そう。

http://www.emacswiki.org/emacs/visual-basic-mode.el