VBScriptでIEが閉じれません。
vbscriptにて、WEBでのパスワード認証画面が正常に動作するかのバグチェックをしようと思っております。
'シェルを起動する
Dim wsh
Set wsh = WScript.CreateObject("WScript.Shell")
'IEを起動する
Dim ie
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
'IEをアクティブにする
Dim wLoc, wSvc, wEnu, wIns
Set wLoc = CreateObject("WbemScripting.SWbemLocator")
Set wSvc = wLoc.ConnectServer
Set wEnu = wSvc.InstancesOf("Win32_Process")
Dim pId
For Each wIns in wEnu
If Not IsEmpty(wIns.ProcessId) And wIns.Description = "iexplore.exe" Then
pId = wIns.ProcessId
End If
Next
Set wLoc = Nothing
Set wEnu = Nothing
Set wSvc = Nothing
While not wsh.AppActivate(pId)
Wscript.Sleep 100
Wend
'IEで指定URLを開く
ie.Navigate "http://〜"
Do While ie.Busy = True Or ie.readyState <> 4
Loop
Dim objShell
Set objShell = WScript.CreateObject("Shell.Application")
'IEで要素に値を入れる
Dim elm
Set elm = ie.document.getElementById("logincode")
elm.Value = "000000"
Set elm = ie.document.getElementById("password")
elm.Value = "000000"
Set elm = ie.document.getElementById("loginbutton")
elm.Click
For Each ie In objShell.Windows()
If InStr(LCase(ie.FullName), "iexplore.exe") Then
WScript.Echo ie.LocationURL
End If
Next
WScript.Sleep 3000
ie.Quit
まだ処理を書いていないですが、ループ処理でパスワードを一つずつ試して行き、
パスワード確認画面を突破できた場合と出来なかった場合は、その時のURLの違いで判断する予定です
しかしその処理を追加する前に、一番最後の行の
ie.Quitの部分でエラーが発生してしまい、先に進めません。
発生しているエラーは以下です。
確認するパスワードは1000個ぐらいあるので自動化で行いたいです。
おわかりになる方がいらしたら、お願いします。