Почему InternetExplorer Object перестает отвечать на запросы? - PullRequest
0 голосов
/ 15 июня 2010

Я пытаюсь войти на сайт, защищенный паролем. Я использую InternetExplorer Object в VBScript. Ошибка лежит после того, как значение oIE.readystate прочитано один раз - то есть в моем цикле оно читает значение oIE.readystate один раз, но во второй раз, когда значение oIE.readystate пытается прочитать, я получаю «800A01CE» ошибка во время выполнения, в которой говорится, что «компьютер удаленного сервера не существует или недоступен: 'oIE.readystate'"

Этот код отлично работал в IE6; моя компания внедрила новую политику AD (не знаю, как / если это вообще повлияет на это), и теперь мы используем IE7. Я не уверен, что IE7 как-то блокирует процесс после oIE.readystate. Любые предложения приветствуются.


Обозначения: «->» означает, что я пишу комментарий о выводе процесса непосредственно после выполнения этой конкретной строки кода.

set oIe=wscript.createobject("InternetExplorer.Application", "IE_")
oIe.navigate "www.google.com"

do while oIe.readystate<>4
   msgbox "oIE readystate: " & oIE.readystate
   ''#-->gets here one time and outputs "oIE readstate: 0"
   wscript.sleep 1000
   msgbox "oIE readystate: " & oIE.readystate
   ''#-->errors out.
loop

msgbox "outside of oIE readystate: " & oIE.readystate
''#--->never gets here.

1 Ответ

0 голосов
/ 15 июня 2010

Это может быть вызов MsgBox, который запутывает его.Выполнение MsgBox изменяет фокус с IE на интерпретатор сценариев, что может сделать IE параноидальным, что его угоняют или что-то в этом роде.Измените их на

WScript.Echo "oIE readystate: " & oIE.ReadyState

И запустите его из командной строки, используя вместо этого cscript myscript.vbs.

...