↑  ←  Описание функции


_IECreate

Создаёт окно браузера Internet Explorer.

#include <IE.au3>
_IECreate([$s_Url = "about:blank" [, $f_tryAttach = 0 [, $f_visible = 1 [, $f_wait = 1 [, $f_takeFocus = 1]]]]])

Параметры

$s_Url [необязательный] Указывает URL, чтобы перейти к нему в созданном окне
$f_tryAttach [необязательный] Указывает, пытаться ли присоединиться к существующему окну
0 = (по умолчанию) Не пытаться присоединиться
1 = Пытаться присоединиться к существующему окну
$f_visible [необязательный] Отображать ли окно браузера
0 = Скрывать окно браузера
1 = (по умолчанию) Отображать окно браузера
$f_wait [необязательный] Указывает, ожидать ли загрузки страницы перед возвратом
0 = Возвратиться немедленно, не ожидая загрузки страницы
1 = (по умолчанию) Ожидать завершения загрузки страницы перед возвратом
$f_takeFocus [необязательный] specifies whether to bring the attached window to focus
0 = Do not bring window into focus
1 = (по умолчанию) bring window into focus

Возвращаемое значение

Успех:Возвращает an object variable pointing to an InternetExplorer.Application object
Ошибка:Возвращает 0 и устанавливает @error
@error:0 ($_IEStatus_Success) = Нет ошибок
1 ($_IEStatus_GeneralError) = Общая ошибка
3 ($_IEStatus_InvalidDataType) = Неверный тип данных
4 ($_IEStatus_InvalidObjectType) = Неверный тип объекта
6 ($_IEStatus_LoadWaitTimeout) = Тайм-аут ожидания загрузки
8 ($_IEStatus_AccessIsDenied) = Отказано в доступе
9 ($_IEStatus_ClientDisconnected) = Клиент отключен
@extended:Set to true (1) or false (0) depending on the success of $f_tryAttach

Примечания

When using tryAttach, a No Match error will be displayed to the console from _IEAttach. Это можно контролировать с помощью _IEErrorNotify.

When opening a local HyperTextApplication (.hta) file, Internet Explorer will open a new browser process for it that will not be accessible through the object variable returned by _IECreate. To control this new browser you must use _IEAttach with the "embedded" option.

Новая безопасность в Windows Vista принуждает создание нового окна браузера, когда браузер получает указание перейти по URL в другой зоне безопасности. Это также происходит с начальным созданием и переходом начатым с _IECreate. Новое окно является новым экземпляром браузера и предыдущая переменная, содержащая объект браузера больше не указывает на него. Есть несколько обходных путей:
1) Добавить #RequireAdmin в свой скрипт (это требуется, даже если учетная запись входит в группу администраторов и запрашивает учетные данные при необходимости.)
2) Используйте _IEAttach для подключения к новому окну браузера
3) Добавить веб-сайт в зону "Надёжные узлы" в IE
4) Выключите "Защищенный режим" в IE
5) Отключите UAC. Необходимо соблюдать осторожность, понимая последствия отключения функций безопасности IE при доступе к ненадёжным сайтам.

См. также

_IEAttach, _IECreateEmbedded, _IEQuit, _IENavigate, _IELoadWait

Пример

#include <IE.au3>

; *******************************************************
; Пример 1 - Create a browser window and navigate to a website
; *******************************************************

Local $oIE = _IECreate("www.autoitscript.com")

; *******************************************************
; Пример 2 - Create new browser windows pointing to each of 3 different URLs
;               if one does not already exist ($f_tryAttach = 1)
;               do not wait for the page loads to complete ($f_wait = 0)
; *******************************************************

_IECreate("www.autoitscript.com", 1, 1, 0)
_IECreate("my.yahoo.com", 1, 1, 0)
_IECreate("www.google.com", 1, 1, 0)

; *******************************************************
; Пример 3 - Attempt to attach to an existing browser displaying a particular website URL
;               Create a new browser and navigate to that site if one does not already exist
; *******************************************************

$oIE = _IECreate("www.autoitscript.com", 1)
; Check @extended return value to see if attach was successful
If @extended Then
    MsgBox(4096, "", "Attached to Existing Browser")
Else
    MsgBox(4096, "", "Created New Browser")
EndIf

; *******************************************************
; Пример 4 - Create an empty browser window and populate it with custom HTML
; *******************************************************

$oIE = _IECreate()
Local $sHTML = "<h1>Hello World!</h1>"
_IEBodyWriteHTML($oIE, $sHTML)

; *******************************************************
; Пример 5 - Create a browser window attached to a new instance of iexplore.exe
;               This is often necessary in order to get a new session cookie context
;               (session cookies are shared among all browser instances sharing the same iexplore.exe)
; *******************************************************

ShellExecute("iexplore.exe", "about:blank")
WinWait("Blank Page")
$oIE = _IEAttach("about:blank", "url")
_IELoadWait($oIE)
_IENavigate($oIE, "www.autoitscript.com")