_IECreateEmbedded
Создаёт объект веб-браузера пригодного для вставки в GUI-окно AutoIt с использованием GuiCtrlCreateObj().
#include <IE.au3>
_IECreateEmbedded()
Возвращаемое значение
Успех: | Возвращает ссылку на объект веб-браузера |
Ошибка: | Возвращает 0 и устанавливает @error |
@error: | 0 ($_IEStatus_Success) = Нет ошибок |
1 ($_IEStatus_GeneralError) = Общая ошибка |
Примечания
Никаких действий не может быть выполнено с этим объектом, пока он будет встроен в родительское приложение (например невозможно выполнить _IENavigate). В виду этого ограничения, браузер автоматически не переходит к 'about:blank' подобно браузеру, созданному с помощью _IECreate. Поэтому вы должны использовать _IENavigate, чтобы перейти к 'about:blank' после того, как объект был встроен в родительское приложение и это будет перед выполнением любых операций, которые основываются на загрузке документов (например _IEBodyWriteHTML).См. также
GUICreate, GUICtrlCreateObj, _IEAttach, _IECreate, _IENavigateПример
; *******************************************************
; Пример 1 - Перехват COM ошибок, таких как 'Назад' и 'Вперёд', находящиеся за пределами границ истории не приводят к отказу скрипта (ожидаемые COM-ошибки будут направлены в консоль)
; *******************************************************
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>
_IEErrorHandlerRegister()
Local $iBtn_Back, $iBtn_Forward, $iBtn_Home, $iBtn_Stop, $iBtn_Refresh, $iBtn_Selectall, $iBtn_Unselect
Local $oIE = _IECreateEmbedded()
GUICreate("Тест вставленного Web-элемента", 640, 480, -1, -1, _
BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN), $WS_EX_COMPOSITED)
GUICtrlCreateObj($oIE, 5, 5, 630, 405)
GUICtrlSetResizing(-1, 2 + 4 + 32 + 64)
Opt("GUIResizeMode", 2 + 64 + 256 + 512) ; Для кнопок
$iBtn_Back = GUICtrlCreateButton("Назад", 10, 420, 60, 30)
$iBtn_Forward = GUICtrlCreateButton("Вперёд", 80, 420, 60, 30)
$iBtn_Home = GUICtrlCreateButton("Домой", 150, 420, 60, 30)
$iBtn_Stop = GUICtrlCreateButton("Стоп", 220, 420, 60, 30)
$iBtn_Refresh = GUICtrlCreateButton("Обновить", 290, 420, 60, 30)
$iBtn_Selectall = GUICtrlCreateButton("Выделить всё", 360, 420, 90, 30)
$iBtn_Unselect = GUICtrlCreateButton("Снять выделение", 460, 420, 110, 30)
GUISetState() ; показывает созданное окно
; _IENavigate ($oIE, "about:blank")
_IENavigate($oIE, "http://www.autoitscript.com")
; цикл выполняется, пока пользователь не закроет окно
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $iBtn_Home
; _IENavigate ($oIE, "about:blank")
_IENavigate($oIE, "http://www.autoitscript.com")
Case $iBtn_Back
_IEAction($oIE, "back")
Case $iBtn_Forward
_IEAction($oIE, "forward")
Case $iBtn_Stop
_IEAction($oIE, "stop")
Case $iBtn_Refresh
_IEAction($oIE, "refresh")
Case $iBtn_Selectall
_IEAction($oIE, "selectall")
Case $iBtn_Unselect
_IEAction($oIE, "unselect")
EndSwitch
WEnd
GUIDelete()
Exit