Что нового

[Автоматизация] Автологин, проблема с привязкой autoit к полям логин\пароль

Сообщения
8
Репутация
-1
Доброго времени суток. Я совсем совсем начинающий далекий товарищ в программировании, хотя и учился на программиста) Просмотрел много текста, но по своей проблеме не нашел ответа. суть такова. Хочу сделать автологин для игры, нашел готовые варианты кода,
Код:
$settings = "settings.ini"                                         
$WindowName = IniRead($settings, "Settings", "WindowName", "")    
$ProcessName = IniRead($settings, "Settings", "ProcessName", "")    
$Login = IniRead($settings, "Account", "Login", "")                
$Password = IniRead($settings, "Account", "Password", "")         

if Not ProcessExists ("elementclient.exe") Then
   Run ("путь к игре")
   Sleep (5000)
   EndIf
If ProcessExists($ProcessName) Then                                 
WinSetState ($WindowName, "", @SW_RESTORE)                         
WinActivate ($WindowName, "")                                    
Send($Login)                                                       
Send("{TAB}")                                                       
Send($Password)                                                    
Send("{ENTER}")                                                   
Endif

но прикрутить не получается - конкретно получается, что выносит окно на передний план и на этом собственно все. Символы с клавиатуры autoit упорно не желает посылать в окно игры. Подскажите пожалуйста в чем ошибка? Может быть есть какие то другие функции для связи программы с полями ввода логин\пароля игры ?
версия 3.3.8.1
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Или, ИМХО, не хуже.
Код:
ControlSetText()
 
Автор
T
Сообщения
8
Репутация
-1
Re: [Автоматизация] Автологин, проблема с привязкой autoit к полям логин\\пароль

Большое спасибо за ответы, попробовал эти функции на стандартных примерах - вроде получается), однако все же никак не могу отправить информацию в поля логин\пароль, сейчас скрипт выглядит так
Код:
#NoTrayIcon                                                         
$settings = "settings.ini"                                          
$WindowName = IniRead($settings, "Settings", "WindowName", "")      
$ProcessName = IniRead($settings, "Settings", "ProcessName", "")    
$Login = IniRead($settings, "Account", "Login", "")                 
$Password = IniRead($settings, "Account", "Password", "")           


If ProcessExists($ProcessName) Then                                 
WinSetState ($WindowName, "", @SW_RESTORE)                          
WinActivate ($WindowName, "")										 
$windowname = winwait("Perfect World","",5)
ControlSend($Login,"","Edit1","")                                                        
Send("{TAB}")                                                       
ControlSend($Password,"","Edit2","")                                                     
Send("{ENTER}")                                                     
Endif

может быть имеет смысл вытащить ID строк логин\пароля с помощью AutoIt Window info?


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

ахах, все разобрался, все дело было в этих участках
Код:
ControlSend($Login,"","Edit1","")
, стоило убрать все что после логина - все заработало) спасибо всем кто помог!
 
Верх