Что нового

[Окна, Диалоги] Отслеживание в режиме онлайн всплывающего окна при работе c IE

coldmine

Новичок
Сообщения
19
Репутация
1
Имеется скрипт, содержащий кусок вот такого кода

Код:
For $c=1 to $oNumOfLines1 step 1

					$oText1= FileReadLine($oListOfLinks1, $c)
					
					_IENavigate($oIE, $oText1, 1)
								
					sleep($oTimeOfViewLink*1000)
									
					Next

при переходе от ссылки №1 к ссылке №2 с вэбстаницы по ссылке №1 вылазят пооочередно 2 сообщения. Сообщения вылазят в виде окон с кнопками OK и отмена. Если никак не реагировать на эти окна, то они висят долго, а переход к ссылке №2 не осуществляется, указанный выше цикл в скрипте приостанавлмвается до ручного закрытия этих сообщений. Подскажите, как мне подавить эти сообщения? И как отследить в режиме онлайн появление таких окон-сообщений?
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
coldmine
Думаю, вам придётся писать функцию, которая будет отслеживать эти окна и закрывать их.
 

Fever

Скриптер
Сообщения
308
Репутация
112
на крайняк :D

Код:
For $c=1 to $oNumOfLines1 step 1
$oIE = _IECreate()
$oText1= FileReadLine($oListOfLinks1, $c)                   
_IENavigate($oIE, $oText1, 1)
sleep($oTimeOfViewLink*1000)
_IEQuit($oIE)                                   
Next
 
Автор
C

coldmine

Новичок
Сообщения
19
Репутация
1
Fever сказал(а):
на крайняк :D

Код:
For $c=1 to $oNumOfLines1 step 1
$oIE = _IECreate()
$oText1= FileReadLine($oListOfLinks1, $c)                   
_IENavigate($oIE, $oText1, 1)
sleep($oTimeOfViewLink*1000)
_IEQuit($oIE)                                   
Next
пробовал до этого - но в самом IE.au3 реакция на эту строку - ошибка. цикл дальше не идет и скрипт завершает работу после истечения тайм-аута. Если открывать ссылки в IE вручную, то результат тот же - окна появляются. Но вот в Опере их нету. Значит возможно что где-то дело в настройках IE, но... перепробовал много вариантов от блокирования всплывающих окон до блокирования активного содержимого - результат отрицательный
 

Fever

Скриптер
Сообщения
308
Репутация
112
Код:
#include <IE.au3>

For $c=1 to 10
$oIE = _IECreate()                   
_IENavigate($oIE, 'http://autoit-script.ru')
_IELoadWait($oIE)
_IEQuit($oIE)                                   
Next


так всё работает ;)
 
Автор
C

coldmine

Новичок
Сообщения
19
Репутация
1
Fever сказал(а):
Код:
#include <IE.au3>

For $c=1 to 10
$oIE = _IECreate()                   
_IENavigate($oIE, 'http://autoit-script.ru')
_IELoadWait($oIE)
_IEQuit($oIE)                                   
Next


так всё работает ;)
попробую, но расскажите-ка, Fever, чем отличается код
Код:
_IENavigate($oIE, 'http://autoit-script.ru')
_IELoadWait($oIE)

от кода
Код:
_IENavigate($oIE, 'http://autoit-script.ru', 1)
?
кроме синтаксиса, конечно ... :-\
 

Fever

Скриптер
Сообщения
308
Репутация
112
coldmine, ничем :laugh: мне просто так удобней ;D
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
coldmine
Код:
_IENavigate($oIE, 'http://autoit-script.ru')

По умолчанию функция ждёт полной загрузки документа, _IELoadWait() уже включена в _IENavigate()
 
Верх