Что нового

Спрятать или убрать из фокуса IE страницу

TwDY

Новичок
Сообщения
13
Репутация
0
Добрый день, подскажите, пожалуйста, можно ли как-то убрать из фокуса страницу в IE, которая только что открылась?
То есть, я открываю страницу в IE, на этой странице нажимаю на кнопку и открывается еще 1 страница. Первая страница работает в фоновом режиме, а новую я никак не могу заставить не забирать на себя фокус.
Код:
WinSetState ( "Патент", "", @SW_HIDE)
помогает, но не моментально, фокус переключается и только потом она сворачивается.

Код:
$oIE1 = _IEAttach("ФИПС") ; Определить объект страницы
_IELoadWait ($oIE1)
$oTextVal = _IEGetObjById($oIE1, "textfield3") ; value
$oFormShow = _IEGetObjById ($oIE1, "imageField2")
_IEFormElementSetValue ($oTextVal, $sCellValue) 
_IEAction ($oFormShow, "click") ;click on show

$oIE2 = _IEAttach("", "instance", 2)
_IEAction ($oIE2, "invisible")
;~ WinActivate("Program Manager")
;~  WinSetOnTop ( "Патент", "", $WINDOWS_NOONTOP)
;~  WinSetState ( "Патент", "", @SW_HIDE)


UPD
Возможно поможет имитация нажатия ctrl+ЛКМ вместо обычного click, как его имитировать?
В общем задача выглядит так - существует страница, на которой нужно вставлять значения и нажимать на картинку, чтобы получить информацию по этому значению. Новая страница открывается в новой вкладке, через сервлеты, забирая на себя фокус. С этой страницы парсится вся информация и записывается в excel. Нужно чтобы это все работало в фоновом режиме. Проблема только с той страницей, с которой я забираю информацию, которая открывается через сервлет, соответственно сразу на нее я попасть не могу, никаких значений там не передается. Не знаю, уже 2 день сижу ищу информацию, пока ничего не работает. Возможно это можно как то сделать через javascript, учитывая то, что к сайту доступа у меня нет?

UPD2
Ctrl+ЛКМ не помогло, в тот момент как открывается новая страница открывается IE с основной страницей, хотя
Код:
WinSetState("ФИПС", "", @SW_HIDE)
стоит.
Код:
$oIE = _IECreate("http://www1.fips.ru/wps/portal/Registers/",0,0,1,0); Открыть ФИПС общую страницу
		WinSetState("ФИПС", "", @SW_HIDE)
			$oIE = _IEAttach("ФИПС") ; Определить объект страницы
			$oForms1 = _IEFormGetCollection ($oIE)
			_IELinkClickByText ($oIE, $aRunArray[$k]) ; Чтобы зайти на нужную страницу - написать вместо Реестр изобретений нужный текст на странице (ссылка)
		$oIE1 = _IEAttach("ФИПС") ; Определить объект страницы

		_IELoadWait ($oIE1); Дождаться загрузки страницы
		$oTextVal = _IEGetObjById($oIE1, "textfield3") ; value
		$oFormShow = _IEGetObjById ($oIE1, "imageField2")
		_IEFormElementSetValue ($oTextVal, $sCellValue) ; Вписать value
		Send("{CTRLDOWN}")
		_IEAction ($oFormShow, "click") ;click on show
		Send("{CTRLUP}")
$oIE2 = _IEAttach("", "instance", 2)
		_IELoadWait ($oIE2);

Есть какие-нибудь идеи, как сделать так чтобы не открывался IE при каждом attach ко 2 странице? Или хотя бы в какую сторону смотреть?
 
Верх