Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] настройка KIS2009 (http://forum.oszone.net/showthread.php?t=137203)

AppleNTU 09-04-2009 14:12 1088845

настройка KIS2009
 
сам инсталятор работает как положенно, труда сильно мне, начинающему, не составил... но вот его настройка которая сразу после инсталятора запускается... (причем запускается от самого главного екзешника... (видимо он читает реестр и не находя чегото запускает свой "визард")) уже вытрепала все нервы... да и сон пропал... уже нормально не сплю 3 неделю - видимо для меня все это мудренно...
на разных машинах разный ID.... для примера оставляю те методы которые я пробЫвал реализовать:
Код:

                            ;Отображать текущую строку сценария с помощью индикатора системной панели в режиме отладки.
AutoItSetOption("TrayIconDebug", 1)
AutoItSetOption("SendKeyDelay", 20)
Opt("MouseCoordMode", 2)
  Run("regedit /S reg.reg")
  Run("setup.exe /pSKIPPRODUCTCHECK=1")
WinWait("Kaspersky Internet Security 2009","Вас приветствует мастер устано")
    ControlClick("Kaspersky Internet Security 2009", "", "Button1", "left", 1)
WinWait("Kaspersky Internet Security 2009","")
    ControlClick("Kaspersky Internet Security 2009", "", "Button2", "left", 1)
WinWait("Kaspersky Internet Security 2009","")
    ControlClick("Kaspersky Internet Security 2009", "", "Button5", "left", 1)
WinWait("Kaspersky Internet Security 2009","")
    ControlClick("Kaspersky Internet Security 2009", "", "Button2", "left", 1)

WinWait("Kaspersky Internet Security 2009","Папка назначения")
    ControlClick("Kaspersky Internet Security 2009", "", "Button4", "left", 1)
WinWait("Kaspersky Internet Security 2009","Выборочная установка")
    ControlClick("Kaspersky Internet Security 2009", "", "Button5", "left", 1)
WinWait("Kaspersky Internet Security 2009","Подготовка к установке")
    ControlClick("Kaspersky Internet Security 2009", "", "Button1", "left", 1)

      ControlClick("Kaspersky Internet Security 2009", "", "Button3", "left", 1)
  Run("regedit /S reg.reg")
WinWait("Kaspersky Internet Security 2009","Завершение работы мастера установки")
      ControlClick("Kaspersky Internet Security 2009", "", "Button2", "left", 1)

Opt("MouseCoordMode", 2)
WinActivate("Мастер настройки Kaspersky Internet Security","")
WinActivate("Мастер настройки Kaspersky Internet Security","")
WinWait("Мастер настройки Kaspersky Internet Security","")
WinWait("Мастер настройки Kaspersky Internet Security","")
WinWait("Мастер настройки Kaspersky Internet Security","")


Opt("MouseCoordMode", 2)
Opt("WinDetectHiddenText", 1)
Opt("WinSearchChildren", 1)
Opt("MouseCoordMode", 2)
WinWait("Мастер настройки Kaspersky Internet Security","")
                            ;RunWait("Avtserver.cmd")
                            ;ProcessClose("AVP.exe")
                            ;send("{ENTER}")
WinActivate("Мастер настройки Kaspersky Internet Security","")
WinActivate("Мастер настройки Kaspersky Internet Security","")            ;Начало
Send("!L")
Send("!д")
Send("!L")              ;ключ
Send("!д")
WinActivate("Мастер настройки Kaspersky Internet Security","")            ;режим защиты
WinWait("Мастер настройки Kaspersky Internet Security","")
                              ;автоматический
  MouseClick("left", 137, 304, 1)

WinActivate("Мастер настройки Kaspersky Internet Security","")
WinWait("Мастер настройки Kaspersky Internet Security","")
                            ;вручную

                            ;ControlClick ( "Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "AVP.Button8","left" ,1 )

  MouseClick("left", 47, 227, 1)
Sleep(100)
                            ;не обновляем
  Send("!L")
  Send("!д")
WinWait("Мастер настройки Kaspersky Internet Security","")
                            ;включаем защиту паролем
WinActivate("Мастер настройки Kaspersky Internet Security","")
WinWait("Мастер настройки Kaspersky Internet Security","")

  ControlClick ( "Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "AVP.Button9","left" ,1 )

                              ;ControlEnable ( "Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "AVP.Button9")
                              ;переходим в поле пароля
                              ;ControlSend("Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "[CLASSNN:AVP.Button9]", "")
  ControlSend("Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "[CLASSNN:Edit1]", "1")
  ControlSend("Мастер настройки Kaspersky Internet Security", "Включить защиту паролем", "[CLASSNN:Edit2]", "1")
                              ;ControlCommand ("Мастер дднастройки Kaspersky Internet Security", "Включить защиту паролем", edit2, "EditPaste" ,1)
                              ;sleep(100)
                              ;Send("{TAB}")
                              ;Send("1")
                              ;Send("{TAB}")
                              ;sleep(10000)
                              ;Send("1")

WinWait("Мастер настройки Kaspersky Internet Security","")

                                      ;далее
Sleep(100)              ;вот с этого момента его несет... и зацепится незнаю за что....
  Send("!L")
  Send("!д")
Sleep(300)
                                  ;далее пропускаем виды угроз
                                  ;AVP.Progress1
Sleep(300)
    Send("!L")
    Send("!д")
    Send("!J")
                                  ;далее
Sleep(3000)
  Send("!L")
Sleep(3000)
                                  ;далее
Sleep(3000)
  Send("!L")
  Send("!д")
                                    ;перезагрузка
  ControlClick ( "Мастер настройки Kaspersky Internet Security", "Я согласен принимать участие в Kaspersky Security Network",52885 , "left" ,1)
                                    ;отменяем перезагрузку
Sleep(3000)
  Send("!L")
  Send("!д")
Sleep(1000)
  Send("!G")
Sleep(1000)
  Send("!U")
Sleep(5000)
RunWait("Avtserver.cmd")

kis8.0.0.506ru.exe сам антивирус после расспаковки msi и exe.... уже выдохся весь

beve 10-04-2009 13:57 1089894

Цитата:

Цитата AppleNTU
уже нормально не сплю 3 неделю »

Так как никто не предложил никакого решения, только в виде исключения, так как этот форум всеже по Autoit, вот ссылка где есть решение проблеммы:
http://www.forum.oszone.ru/post-626477.html, на этой странице есть описание от пользователя alcos, в котором он в 8 пунктах излагает решение автоматической установки Kis 7. Я лично данный метод опробовал для Kis 6, все работает, поэтому думаю, что и на Kis 8 должно получится.

AppleNTU 10-04-2009 17:27 1090161

Цитата:

Цитата beve
Цитата AppleNTU:
уже нормально не сплю 3 неделю »
Так как никто не предложил никакого решения, только в виде исключения, так как этот форум всеже по Autoit, вот ссылка где есть решение проблеммы:
http://www.forum.oszone.ru/post-626477.html, на этой странице есть описание от пользователя alcos, в котором он в 8 пунктах излагает решение автоматической установки Kis 7. Я лично данный метод опробовал для Kis 6, все работает, поэтому думаю, что и на Kis 8 должно получится. »

Дело в том что я и пошел по другому пути... КИС7 у меня установился тихими ключами без проблем... а КИС8 нехочет идут ошибки... + хочу вставить свои настройки исключений и параметров защиты (из командной строки, но нужен пароль _пустой не подходит-тоесть без Autoit здесь не обойтись), а их возможно вставить только если в панели установили пароль (и его можно поставить только из GUI, реестр овый метод не подходит для других машин....) вот и патаюсь зделать через Autoit....
дело втом что стандартным ControlClick и MouseClick номер не проходит.... не за что цепляться (WinWait -не спасает везде одно и тоже окно, и один и тотже скрытый текс... на всех этапах)
утановка у него идет в 2 єтапа:
1 стандарный MSI
2 запускается AVP.exe (но wizard) и там идет установка ключей, баз, установка паролей...)) и просто делать паузу тоже неполуцчается - неугадаешь.... празвешто по30 минут на каждое окно...
там вообще информации минимум и она с самого начала и до конца -практически не меняется... тоесть зацемпится что бы вовремя дождалась чегото.... что бы нажать такую такую кнопку.... после пароля она выстреливает как из пулемета все оставшиеся комбинации клавишь тоесть кнопки и надписи там нестандарные Au3Info.exe выдает одну и туже информацию для всех окон... а кнопки реагируют на ControlClick 1 из 10..... помогите написать..программу....
Код:

WinWait("Kaspersky Internet Security 2009"
это стандартная MSI - ТУТ нет проблемм

Код:

WinWait("Мастер настройки Kaspersky Internet Security","")
'а эта часть кода и есть БОЛЬШАЯ проблемма... я просто незнаю за что уже цеплятся.... хелп читал не раз на предмет нахождения этой(схожей) проблеммы... читал эту ветку... нето!!!
может есть команда которая может как WinWait ждать "прогрессбар" или ихнюю avp.buton и продолжать далее выполнение программы (тоесть реагировать не на текст а на появление элементов... пусть даже и не стандартных).... я просто уже незнаю что ещё можно придумать...
а так как это программа пишеться на Autoit я в єту ветке специализированной и написал...

Цитата:

Цитата beve
6, все работает, поэтому думаю, что и на Kis 8 должно получится »

номер этот однозначно не проходит :sorry: :help: :shot: :shot: :cry: :cry: :dont-know + поставленны более расширенные задачи... для етого и нужна программа именно на Autoit е
лично для меня - здесь сильно не стандарный случай... в той ветке я писал но еще без задумки для дополнительных настроек-- а когда задумался на этим то без пароля не обойтись а его надол только в Autoit е набирать а касперский его или знает или по хитрому написал все окошки...
моджет там и все просто -но это для Вас а не для меня...

amel27 11-04-2009 10:35 1090749

Цитата:

Цитата AppleNTU
может есть команда которая может как WinWait ждать "прогрессбар" или ихнюю avp.buton и продолжать далее выполнение программы (тоесть реагировать не на текст а на появление элементов... пусть даже и не стандартных) »

уже обсуждалось как-то, правда ожидание придется ставить в цикле, возможности идентификации контролов в AutoIT обширные - вплоть до регулярных выражений и позиции в окне (прямой линк в справке со страницы ControlGetHandle)... к примеру, ожидание окна с контролом Button2 и текстом "Finish":
Код:

Do
    Sleep(100)
Until ControlGetHandle("Мастер настройки Kaspersky Internet Security", "", "[CLASS:Button; TEXT:Finish; INSTANCE:2]")


AppleNTU 13-04-2009 10:59 1092586

Цитата:

Цитата amel27
уже обсуждалось как-то, правда ожидание придется ставить в цикле, возможности идентификации контролов в AutoIT обширные - вплоть до регулярных выражений и позиции в окне (прямой линк в справке со страницы ControlGetHandle)... к примеру, ожидание окна с контролом Button2 и текстом "Finish":
Код:
Do
Sleep(100)
Until ControlGetHandle("Мастер настройки Kaspersky Internet Security", "", "[CLASS:Button; TEXT:Finish; INSTANCE:2]")
Это сообщение посчитали полезным следующие участники: »

вчера пробЫвал.... не то... точнее видимо надо его проверять не только на наличие но и на: показывается или спрятано... потому как без разницы где ставишь (в каком месте кода) он его пропускает.... видимо он это дело сразу все запускает но в скрытом режиме (что то типа все это одно окно с большими вкладками и фокус переводится спомощью "далее" и "назад")
Код:

Do
      Sleep(100) 
Until ControlGetHandle("Мастер настройки Kaspersky Internet Security", "", "[CLASS:AVP.Progress; INSTANCE:1]")

извините если что не так не силен я в программировании....

amel27 13-04-2009 11:32 1092612

AppleNTU, к сожалению, у меня нет KIS... Ваше предположение легко проверить - ControlGetHandle должен всегда возвращать реальный HWND, попробуйте его вывести через ConsoleWrite
Код:

Do
      Sleep(100)
      $CtrlTitle =  "Мастер настройки Kaspersky Internet Security"
      $CtrlID = "[CLASS:AVP.Progress; INSTANCE:1]"

      $hControl = ControlGetHandle($CtrlTitle, "", $CtrlID)
Until $hControl
ConsoleWrite($hControl &': "'& $CtrlTitle &'" : '&$CtrlID &@CRLF)

попробуйте вместо наличия проверять видимость контрола, но для этого нужно сначала убедиться, что ControlCommand работает с элементами KIS - проверить, что возвращает ф-ция для видимых и скрытых элементов
Код:

Do
      Sleep(100)
      $CtrlTitle =  "Мастер настройки Kaspersky Internet Security"
      $CtrlID = "[CLASS:AVP.Progress; INSTANCE:1]"

      $IsVisible = ControlCommand($CtrlTitle, "", $CtrlID, "IsVisible", "")
Until $IsVisible


AppleNTU 13-04-2009 11:53 1092629

Цитата:

Цитата amel27
AppleNTU, к сожалению, у меня нет KIS... »

Вот официальная пробная версия да кстати я в своем посте написал о том что здесь рассматривается его установка и ссылка на этот топик!
Буду в течении дня проверять... Спасибо что помогаете! без Вас точно не справлюсь!:pray: :pray: :pray: :pray: :pray: :pray: :hi: :hi: :hi: :hi: :angel: :angel: :bow: :bow: :bow: :bow:

Если есть другие варианты проверок пишите - я потом обязательно отпишусь!
ControlCommand -незнаю но ControlClick -не всегда (*но на некоторых работает) и не везде срабатывает...

amel27 14-04-2009 13:32 1093707

AppleNTU, проверил - ControlGetHandle() действительно всегда возвращает какое-то значение, зато ControlCommand/IsVisible работает нормально для всех проверенных классов элементов... правда есть окна совсем без элементов, а где нужен пароль так и не встретил - мабуть не тем путем пошел

AppleNTU 30-04-2009 12:25 1107864

Цитата:

Цитата amel27
AppleNTU, проверил - ControlGetHandle() действительно всегда возвращает какое-то значение, зато ControlCommand/IsVisible работает нормально для всех проверенных классов элементов... правда есть окна совсем без элементов, а где нужен пароль так и не встретил - мабуть не тем путем пошел »

Работает! спсибо!"
есть последние вопросы
1.:
Код:

Send("!L")
  Send("!д")

приходится дублировать и на ангийском нажатие и на русском!!! часть на некоторых компьютерах работала с русскими буквами а например у меня дома только с английской буквой... как это дело все унифицировать (аля уневерсальный способ -может есть кода какие нибудь....???)
2.: пооканчанию касперсикй закрывается... и обновление баз не происходит...
думаю котролировать процйесс пока не в процессах не появиться сам касперский... что бы потом продолжить обновлен ие баз и настроек... так вот вопрос можно ли забускать программы с автолита с длинными ключами (разными) или использовать CMD? какие ограничения для програм запускаемые с помощью autoit на именно ключи???
спосибо за ответ!


Время: 11:19.

Время: 11:19.
© OSzone.net 2001-