WinXP Pro + IE8 環境においてVBSでIEの自動制御を行なっています。
IE8にバージョンアップしてからプロセスの管理が出来なくなりました。
1、プロキシ認証を行なうためまずIE8を起動し、認証を行ないます。
この時点でタスクマネージャーを確認すると
iexplore.exeが2つ起動してきます。(フレーム部とタブ部だと思います。)
2、VBSを実行します。
条件1:IEのプロセスが2個なら以下の処理を実行
Do
Set objIE = Nothing
Set objIE = WScript.CreateObject("InternetExplorer.Application")
<処理>
objIE.Quit
条件2:IEのプロセスが2個になるまで待つ
Loop
上記の処理を行なっていますが、「条件2」の時点でIEのプロセスは
タスクマネージャー上に3つ存在します。
60秒ほど経つと勝手に一つ消えます。
この動きは「Loosely-Coupled IE (LCIE)」というものらしいのですが、
VBSですぐにプロセスが消えるように出来ないでしょうか?
loopを繰り返すと、IEのプロセスが4つまで増えて、後は使いまわしてるみたいです。
対処方法として以下のレジストリを弄ることでプロセスが待機する時間を
操作できるようなんですが、不特定多数の方に使用してもらうので
なるべくレジストリは弄りたくないです。
キー: HKCU\Software\Microsoft\Internet Explorer\Main
エントリ: TabShutdownDelay
データ型:REG_DWORD
データ: 60000 (10進数) > 0
以上、よろしくお願いします。
ツイート | ![]() |