2010/02/20

ZeroProxy起動用のスクリプト


ZeroProxyを使ってWindows Mobile機経由でインターネット接続をしていますが、接続の前後に「ネットワークカード」から「ワイアレスネットワークの構成」を切り替えなければなりませんし、自動ダイアルアップが上手く働かない場合が多いので、出来る限り自動化出来るようにスクリプトを書いてみました。

MortSctiptを使っています。

・「ネットワークカード」を起動(手動で設定変更)
・ZeroProxyを起動
・ダイアルアップが無い/切断されたらダイアルアップ
・「ネットワークカード」を起動(手動で設定変更)
・WiFiをOff

の動作をします。(実際には「ネットワークカード」起動前にWiFiを起動して「アクセスするネットワーク」を選択出来るようにしています。)

以下のソフトを併用しています。

・ZeroProxy
・MortScript
・WifiCtrl
・harddial


#ZeroProxy起動用スクリプト
#設定
exe1 = "\program files\Wifictrl.exe"
exe2 = "\Windows\ctlpnl.exe"
exe3 = "\program files\harddial.exe"
exe4 = "\program files\ZEROProxy\ZEROProxy.exe"
title1 = "設定"
title2 = "ZEROProxy"
WaitS = 1000
WaitL = 3000
#スクリプト開始
#ネットワークカード起動のサブルーチンへ
Call NetworkCard
#ZeroProxyを起動
Run(exe4)
#ZeroProxyが起動している間はループ
WaitForActive(title2, 60)
While(WndExists(title2))
 #インターネットへの接続が切断されたら再度ダイアルアップ
 If(InternetConnected("http://www.google.com"))
 Else 
  Run(exe3, "-on")
EndIf
EndWhile
#ダイアルアップを切断
Run(exe3, "-off")
#ネットワークカード起動のサブルーチンへ
Call NetworkCard
#WiFiをoff
Run(exe1, "off")

Sub NetworkCard
#WiFiをOnにしてネットワークカードを表示
Run(exe1, "on")
Sleep(WaitL)
Run(exe2, "cplmain.cpl,17")
#ネットワークカードが起動している間はループ
WaitForActive(title1, 60)
While(WndExists(title1))
EndWhile
EndSub

*エラーー処理をきちんとしていませんので、自己責任にてお願いします。

(21/Feb/2010追記)

ZeroProxy起動中にダイアルアップが切断されてしまうことがあるので、下記4行を追加しました。

インターネットへの接続が切断された場合は、自動的に再ダイアルアップします。

 If(InternetConnected("http://www.google.com"))
 Else 
  Run(exe3, "-on")
 EndIf

(22/Feb/2010追記)

余計なWaitを削除して、重複する部分はサブルーチンにしました。

多少きびきび動くようになりましたが、基本的な動作に変更はありません。

以上

0 件のコメント:

コメントを投稿