Advertisement
AZJIO

PassCmd_.au3

Jul 6th, 2013
676
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 1.72 KB | None | 0 0
  1. Opt("WinTitleMatchMode", 1) ; совпадение окна по началу заголовка
  2. If WinExists("Password Commander RUS") Then ; если окно существует
  3.     Run(@ScriptDir & '\PassCmd.exe') ; то активируем программу
  4.     Exit ; и завершаем скрипт
  5. EndIf
  6.  
  7. Run(@ScriptDir & '\PassCmd.exe')
  8.  
  9. Opt("WinTitleMatchMode", 3) ; точное совпадение окна по заголовку
  10.  
  11. $hWndR = 0
  12. $hWndA = 0
  13.  
  14. $timer = TimerInit()
  15.  
  16. Do ; цикл ускоряет доступ к окну взависимости от регистрации
  17.     If WinExists("Регистрация") Then $hWndR = WinWaitActive('Регистрация', '', 1)
  18.     If WinExists("Авторизация") Then $hWndA = WinWaitActive('Авторизация', '', 1)
  19.     If $hWndR Or $hWndA Then ExitLoop
  20.     Sleep(10)
  21. Until TimerDiff($timer) > 3000
  22.  
  23. If $hWndR Then ; если окно регистрации, то закрываем эти диалоги
  24.     ControlClick($hWndR, "", "[CLASS:TButton; INSTANCE:2]")
  25.     $hWndR = WinWaitActive('Passcmd', '', 2)
  26.     If Not $hWndR Then Exit ; проверка и выход в случае проблемы
  27.     ControlClick($hWndR, "", "[CLASS:Button; INSTANCE:1]")
  28.     $hWndA = WinWaitActive('Авторизация', '', 5) ; ожидая активации нужного окна
  29. EndIf
  30.  
  31. If $hWndA Then ; если активировано окно авторизации, то осуществляем вход
  32.     ControlSend($hWndA, "", "[CLASS:TStealthEdit; INSTANCE:1]", 'часть моего пароля')
  33.     Send('{HOME}') ; ставим курсор в начало, чтобы ввести недостающую часть длинного пароля
  34. EndIf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement