Что нового

вопрос от ламера :) ожидание выполнения скрипта

Сообщения
44
Репутация
-1
задача проста, в окне rAdmina вводить пароли, но как сделать что бы каждый раз когда возникает окно скрипт выполнялся?
 

hedji

Продвинутый
Сообщения
408
Репутация
88
Код:
While 1 ;бесконечно проверять 1 раз в секунду
	if(WinExists("Безымянный")) Then
		;если окно появилось, то что-то сделать
		MsgBox(0, "", "Окно появилось!")
	EndIf
	Sleep(1000)
WEnd
 
Автор
Y
Сообщения
44
Репутация
-1
hedji сказал(а):
Код:
While 1 ;бесконечно проверять 1 раз в секунду
	if(WinExists("Безымянный")) Then
		;если окно появилось, то что-то сделать
		MsgBox(0, "", "Окно появилось!")
	EndIf
	Sleep(1000)
WEnd
Понял, спасибо большое! тоже подумал про цикл.


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

Но как я понял, его первый раз все равно необходимо запустить?
 
Автор
Y
Сообщения
44
Репутация
-1
В моем случае ввод текста в поле, после каждой секунды он еще раз вводит и так далее, как этого избежать?
 

hedji

Продвинутый
Сообщения
408
Репутация
88
Ввести пароль, отправить Enter, дождаться закрытия окна
Код:
While 1 ;бесконечно проверять 1 раз в секунду
    if(WinExists("Безымянный")) Then
        ;если окно появилось, то что-то сделать
		WinActivate("Безымянный") ;активировать окно ввода пароля
		Send("password") ;ввести пароль
		Sleep(1000) 
		Send("{ENTER}") ;нажать Enter
		While WinExists("Безымянный") ;ждать пока окно с паролем закроется
			Sleep(1000)
		WEnd        
    EndIf
    Sleep(1000)
WEnd
 
Автор
Y
Сообщения
44
Репутация
-1
Пока вы писали ответ, нашел сам решение:smile:

While 1 ; цикл ожидания активного окна содержит условие действие скрипта
Код:
If(WinExists("Система безопасности Radmin:")) Then
		Send($Mypass)

		send("{ENTER}") ;добавлена отправка нажатия ENTER после ввода
	EndIf
Sleep(1000)
WEnd
 
Верх