NetFrontと接続先の切り替えをMortScriptで自動化

X02HT用に書いたところ、意外と反響もあったり、某所に書き込みがされていたりしたので、X01HT用の設定も書いておきます。

Runwait( "\Program Files\harddial.exe", "-off" )
RegWriteDWord("HKLM", "Comm\ConnMgr\Providers\{7C4B7A38-5FF7-4bc1-80F6-5DA7870BB1AA}\Connections\VFJP WAP", "Enabled", 1)
RegWriteDWord("HKLM", "Comm\ConnMgr\Providers\{7C4B7A38-5FF7-4bc1-80F6-5DA7870BB1AA}\Connections\SoftBank", "Enabled", 0)
RegWriteDWord("HKCU", "Software\ACCESS\NetFront34\BrowserPref", "UseProxy", 1)
RegWriteDWord("HKCU", "Software\ACCESS\NetFront34\UA", "UAIndex", 1)
Run( "\Program Files\harddial.exe", "-on" )
Runwait( "\Program Files\NetFront34\NFBrowser.exe")
Run( "\Program Files\harddial.exe", "-off" )
RegWriteDWord("HKLM", "Comm\ConnMgr\Providers\{7C4B7A38-5FF7-4bc1-80F6-5DA7870BB1AA}\Connections\VFJP WAP", "Enabled", 0)
RegWriteDWord("HKLM", "Comm\ConnMgr\Providers\{7C4B7A38-5FF7-4bc1-80F6-5DA7870BB1AA}\Connections\SoftBank", "Enabled", 1)
RegWriteDWord("HKCU", "Software\ACCESS\NetFront34\BrowserPref", "UseProxy", 0)
RegWriteDWord("HKCU", "Software\ACCESS\NetFront34\UA", "UAIndex", 0)

解説の必要はあまり無いかもしれませんが、一応。

  1. 現在接続中の回線があれば切断
  2. VFJP WAP 回線を使用するフラグを立てる(自分の環境では、VFJP WAP という名前で接続を作成してあります)
  3. SoftBank 回線を使用しないに変更
  4. NetFrontのプロキシを使う設定をONに(X02HTと同じ)
  5. NetFrontのユーザエージェントを切り替える(X02HTと同じ)
  6. 回線を接続(X02HTと同じ)
  7. NetFrontを起動し、終了まで処理を一時中断(X02HTと同じ)
  8. 回線を切断(X02HTと同じ)
  9. VFJP WAP 回線を使用しないに変更
  10. SoftBank 回線を使用するに変更
  11. NetFrontのプロキシを使う設定をOFFに(X02HTと同じ)
  12. NetFrontのユーザエージェントを切り替える(X02HTと同じ)


ほとんどX02HTと同じですが、回線の切り替え部分だけ、レジストリ操作が違いました。
X02HTでこの部分の何が変化しているのかを、1つ1つのレジストリを探して調べたので、結構手間でした。
X01HTは、元々NetFront3.3用に回線とユーザエージェントを切り替えるツールがあったので、どこかのレジストリを操作していることは間違いないとにらんで、1つ1つ調べました。


ちなみに、MortScriptを使えば、さまざまな処理を自動で行うことができます。
自分が使っている例としては、

  • 2++の背景を切り替える(昼間は背景色を白に、夜は黒にして起動したいので)
  • 定期的に初期化するので、SDカードからのCABファイルのインストールを自動化する
  • レジストリの初期設定を自動化する

などでしょうか。


奥が深いので、もっと勉強すれば、いろいろなことが出来ると思いますよ。
ちなみに、今回のスクリプトもMortScript4.0のものなので、4.1で動くかどうかは未検証です。
検証するつもりもありません。
(個人的には、4.0でも自分が使う範囲内には全く問題がないので、しばらくは4.0のまま使う予定です)