PDA

Показать полную графическую версию : VDialer 3.9.7


e9990638
16-03-2006, 23:38
Sanja Alone
Пытался сделать установку VDialer.exe через Autoit-v3
Проблема вот в чем:
Создал скрипт VDialer.au3
; Запрет на двойной запуск скрипта
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)

; Пауза между нажатием клавиш
AutoItSetOption("SendKeyDelay", 50)

; Если скрипт засбоил, в трее подведите мышку к иконке AutoIT скрипта, и узнаете, где он

застопроился
AutoItSetOption("TrayIconDebug", 1)

; Проверка на уже установленную программу
If FileExists ( @ProgramFilesDir & "\VDialer-3.9.7\VDialer3.exe" ) Then
MsgBox (64,'Информация','Программа VDialer-3.9.7 уже стоит на Вашем компьютере.

Удалите её и попробуйте снова.',7)
Exit
EndIf

; Запуск программы
Run('VDialer3.9.7.exe')

; Лицензионное соглашение
WinActivate ('Лицензионное соглашение','Я принимаю')
WinWaitActive ('Лицензионное соглашение','Я принимаю')
Send("{ENTER}")

; Директория установки
WinActivate ('Директория установки','')
WinActive ('Директория установки','')
ControlSetText ( 'Директория установки','', 'Edit1', @ProgramFilesDir & "\VDialer-3.9.7" )
ControlClick ('Директория установки','','Button1')

; Установка

; Программа установки
WinActivate ('Программа установки','Программа VDialer3 успешно установлена')
WinWaitActive ('Программа установки','Программа VDialer3 успешно установлена')
;ControlClick ('Программа установки','Программа VDialer3 успешно установлена','Button1')
Send("{ENTER}")

; Закрыть группу запуска " VDialer3"

WinActivate ('VDialer3','')
WinClose ('VDialer3','')


Exit


, рядом положил дистрибутив VDialer.exe.

Запускаю AutoIt3.exe выбираю VDialer.au3: полет нормальный
Компилирую VDialer.au3 при помощи Aut2Exe.exe, получаю VDsetup.exe
Запускаю VDsetup.exe: все нормально
Решил все это упаковать WinRAR.exe в самораспаковывающий архив, назвав его AVDialer.exe
Запускаю AVDialer.exe, стопорится процесс - активна папка, откуда запустил AVDialer.exe
Закрываю или сворачиваю папку - процесс идет и стопорится на строке:
; Программа установки
WinActivate ('Программа установки','Программа VDialer3 успешно установлена')
WinWaitActive ('Программа установки','Программа VDialer3 успешно установлена')
;ControlClick ('Программа установки','Программа VDialer3 успешно установлена','Button1')
Send("{ENTER}")
Дальше все делать приходится вручную.
Подскажи как решить проблему?

Sanja Alone
17-03-2006, 04:16
e9990638
Подскажи как решить проблему?

Везде перед WinActivate добавь WinWait (или оставь только WinWaitActive - это менее надежный вариант при шаловливых ручках), а то у тебя и без архива все через раз работать будет.
Комментарий rar-sfx архива должны быть приблизительно такими:
Setup=VDsetup.exe
TempMode
Silent=1
Overwrite=1(режимы Silent, Overwrite - на твой вкус)
Запуск инсталляционного (да и любого другого, не находящегося в %PATH%) экзешника нужно осуществлять по полному пути. В данном сл.:
Run(@ScriptDir & '\VDialer3.9.7.exe')
Проверь синтаксис самого скрипта - в этом коде есть ошибки ("застопроился", "Удалите её и попробуйте снова.',7)" - это хвосты от предыдущих строк). Для удобной проверки синтаксиса можешь использовать небольшой, но уч. удобный редактор SciTE (http://www.autoitscript.com/autoit3/scite/downloads.php) (Ctrl+F5 - проверка синтаксиса, F4 - переход к след. ошибке).


WinActivate ('VDialer3','')
WinClose ('VDialer3','')Нет нужды активировать окно перед его закрытием - здесь хватит и WinClose ('VDialer3').

e9990638
19-03-2006, 13:01
Sanja Alone
Спасибо




© OSzone.net 2001-2012