Что нового

Нажать на кнопку без ID

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Код:
#include <IE.au3>
$oIE = _IECreate("https://ru.4game.com/pointblank/play/?popupWidget=AuthPopupWidget")
$login = "filautdinov"
$pass = "12345678"
$oForm = _IEGetObjById($oIE, "guest_form")
$iLogin = _IEGetObjById($oIE, "AuthFormLogin")
_IEFormElementSetValue($iLogin, $login)
$iPass = _IEGetObjById($oIE, "AuthFormPassword")
_IEFormElementSetValue($iPass, $pass)

$oButton = _IEGetObjById($oIE, "jsLoginPopupWidget__SignIn")
_IEAction($iPass, 'focus')
_IEAction($iLogin, 'focus')
_IEAction($oButton, 'click')
 
Автор
F

filautdinov

Знающий
Сообщения
96
Репутация
9
Спасибо C2H5OH работает))


Добавлено:
Сообщение автоматически объединено:

C2H5OH работает только если окно активно, пробывал вариант с UIAutomate в

Код:
$oIE = _IECreateEmbedded() 
	GUICtrlCreateObj($oIE,0,0,1024,768) 
	_IENavigate($oIE,"https://ru.4game.com/pointblank/play/?popupWidget=AuthPopupWidget",0)
	_IELoadWait($oIE)
	
	$sLogin =_IEGetObjById($oIE,"AuthFormLogin")
	$sPassw =_IEGetObjById($oIE,"AuthFormPassword")


	_IEFormElementSetValue ($sLogin, "user")
	_IEFormElementSetValue ($sPassw, "00000")

Не получается, как сделать что б срабатывало в свернутом виде в своем gui ?
 
Автор
F

filautdinov

Знающий
Сообщения
96
Репутация
9
C2H5OH
Пробывал так:
Код:
#include "Include\UIAutomate.au3"
#include <IE.au3>


$sForm = GUICreate('IE', 1024, 768)

$oIE = _IECreateEmbedded() 
GUICtrlCreateObj($oIE,0,0,1024,768) 
_IENavigate($oIE,"https://ru.4game.com/pointblank/play/?popupWidget=AuthPopupWidget",0)
_IELoadWait($oIE)

$sLogin =_IEGetObjById($oIE,"AuthFormLogin")
$sPassw =_IEGetObjById($oIE,"AuthFormPassword")

_IEFormElementSetValue ($sLogin, "user")
_IEFormElementSetValue ($sPassw, "000000000")

$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[class:AutoIt v3 GUI]", "","IE"))

$oButton = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", " Вход")
_UIA_ElementDoDefaulAction($oButton)



Добавлено:
Сообщение автоматически объединено:

C2H5OH сказал(а):
Так а с UIAutomate что?

И чем всё таки не устраивает вариант
edyapd сказал(а):
А если просто отправить
Код:
ControlSend("[ACTIVE]", "", "", "{Enter}")
?
Нужно что бы все работало в свернутом виде, хочу сделать gui и авторизовываться через него далее передавать параметры для запуска игры.
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
ControlSend как раз и работает в свёрнутом виде.

Код:
$hwnd = $oIE.hwnd
ControlSend($hwnd, "", "", "{Enter}")
 
Автор
F

filautdinov

Знающий
Сообщения
96
Репутация
9
Ок, поробую твой вариант. Сейчас на сайте тех перерыв не проверить.
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Кстати, никогда не понимал стремление логиниться ботом.
imho, человек должен логиниться сам, а потом уже запускать бота.
 
Автор
F

filautdinov

Знающий
Сообщения
96
Репутация
9
C2H5OH сказал(а):
Кстати, никогда не понимал стремление логиниться ботом.
imho, человек должен логиниться сам, а потом уже запускать бота.
каждому свое) мне вот так удобней


Добавлено:
Сообщение автоматически объединено:

C2H5OH сказал(а):
ControlSend как раз и работает в свёрнутом виде.

Код:
$hwnd = $oIE.hwnd
ControlSend($hwnd, "", "", "{Enter}")
Попробывал вариант с ControlSend и UIAutomate оба варианта работаю в IE а вот если использовать тоже самое в своем gui с не срабатывает может из за разных версий IE
Код:
#include "Include\UIAutomate.au3"
#include <IE.au3>


$sForm = GUICreate('IE', 1024, 768)

GUISetState(@SW_SHOW, $sForm)

$oIE = _IECreateEmbedded() 
GUICtrlCreateObj($oIE,0,0,1024,768) 
_IENavigate($oIE,"https://ru.4game.com/pointblank/play/?popupWidget=AuthPopupWidget",0)
$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[class:AutoIt v3 GUI]", "","Internet Explorer_Server1"))
_IELoadWait($oIE)

$sLogin =_IEGetObjById($oIE,"AuthFormLogin")
$sPassw =_IEGetObjById($oIE,"AuthFormPassword")

_IEFormElementSetValue ($sLogin, "user")
_IEFormElementSetValue ($sPassw, "0000000")




$oButton = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Вход")
_UIA_ElementDoDefaulAction($oButton)


$hwnd = $oIE.hwnd
ControlSend($hwnd, "", "", "{Enter}")

Sleep(20000)
 

InnI

AutoIT Гуру
Сообщения
4,958
Репутация
1,448
filautdinov [?]
тоже самое в своем gui
Код:
#include "UIAutomate.au3"
#include <IE.au3>

$sForm = GUICreate('IE', 1024, 768)
GUISetState(@SW_SHOW, $sForm)
$oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 0, 0, 1024, 768)
_IENavigate($oIE,"https://ru.4game.com/pointblank/play/?popupWidget=AuthPopupWidget", 0)
_IELoadWait($oIE)

WinSetState("[class:AutoIt v3 GUI;title:IE]", "", @SW_MINIMIZE)
Sleep(1000)

$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[class:AutoIt v3 GUI;title:IE]", "", "Internet Explorer_Server1"))
$oLogin = _UIA_GetControlTypeElement($oParent, "UIA_EditControlTypeId", "AuthFormLogin", "AutomationId")
_UIA_ElementTextSetValue($oLogin, "user")
$oPassword = _UIA_GetControlTypeElement($oParent, "UIA_EditControlTypeId", "AuthFormPassword", "AutomationId")
_UIA_ElementTextSetValue($oPassword, "123456")
_UIA_ElementSetFocus($oLogin)
_UIA_ElementSetFocus($oPassword)
$oButton = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Вход")
_UIA_ElementDoDefaulAction($oButton)

WinSetState("[class:AutoIt v3 GUI;title:IE]", "", @SW_RESTORE)
Do
Until GUIGetMsg() = -3
 
Верх