Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Хранение серийного номера во внешнем файле.

Ответить
Настройки темы
[решено] Хранение серийного номера во внешнем файле.

Аватара для wolkow70

Ветеран


Сообщения: 3206
Благодарности: 845

Профиль | Отправить PM | Цитировать


Товарищи, подскажите реализуема ли средствами AutoIt (только начинаю разбираться) следующая задача.

Сделал модуль автоматического ввода серийного номера для ACDSee Pro.

Код: Выделить весь код
$sTitleRus = 'Добро пожаловать - ACDSee Pro';заголовок окна ввода ключа русский.
$sTitle1Rus = 'Регистрация - ACDSee Pro';заголовок окна ввода ключа русский.
$sTitle1EnRus = 'ACDSee Pro';заголовок окна с текстом "Для завершения регистрации

If _Singleton(@ScriptName, 1) = 0 Then
Exit;запрещение запуска второй копии программы
EndIf

Run(@ScriptDir & '\ACDSeePro5.exe');запускаем ACDSeePro5.exe из той же папки, где лежит скрипт
BlockInput(1);блокируем клавиатуру
WinWait($sTitleRus);ждем окно ввода пароля.
If Not WinActive($sTitleRus) Then WinActivate($sTitleRus)
WinWaitActive($sTitleRus);ждем его активации.
ControlCommand($sTitleRus, '', '[CLASS:Edit; INSTANCE:1]', "EditPaste", 'XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX')
ControlClick($sTitleRus, '', '[CLASS:Button; INSTANCE:3]')
WinWait($sTitle1Rus);ждем окно регистрации программы.
If Not WinActive($sTitle1Rus) Then WinActivate($sTitle1Rus)
ControlClick($sTitle1Rus, '', '[CLASS:SysLink; INSTANCE:2]');нажимаем на ссылку "Зарегистрироваться позже"
WinWait($sTitle1EnRus);ждем окно с текстом "Для завершения регистрации необходим перезапуск программы..."
If Not WinActive($sTitle1EnRus) Then WinActivate($sTitle1EnRus)
ControlClick($sTitle1EnRus, '', '[CLASS:Button; INSTANCE:1]') ;нажимаем на кнопку ДА, и программа сама перезапускается.
BlockInput(0);снимаем блокировку клавиатуры.
Теперь хочу сделать, что бы можно было в одной папке с exe-файлом AutoIt располагать текстовый файл (или ini) в котором также можно было хранить серийный номер для ввода.
То есть , если понадобиться сменить серийный номер, чтобы не перекомпилировать всю сборку.

Логика может быть такой, если внешний текстовый файл создан, то номер считывается из него, иначе из самого скрипта.
Или хотя бы вариант только с внешним файлом.

-------
Человек человеку - друг, товарищ и волк!


Отправлено: 13:22, 02-05-2012

 

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Код: Выделить весь код
$sTitleRus = 'Добро пожаловать - ACDSee Pro';заголовок окна ввода ключа русский.
$sTitle1Rus = 'Регистрация - ACDSee Pro';заголовок окна ввода ключа русский.
$sTitle1EnRus = 'ACDSee Pro';заголовок окна с текстом "Для завершения регистрации

$sSerial = IniRead(@ScriptDir & '\Serial.ini', 'Data', 'Key', 'XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX')

If _Singleton(@ScriptName, 1) = 0 Then
    Exit;запрещение запуска второй копии программы
EndIf

Run(@ScriptDir & '\ACDSeePro5.exe');запускаем ACDSeePro5.exe из той же папки, где лежит скрипт
BlockInput(1);блокируем клавиатуру
WinWait($sTitleRus);ждем окно ввода пароля.
If Not WinActive($sTitleRus) Then WinActivate($sTitleRus)
WinWaitActive($sTitleRus);ждем его активации.
ControlCommand($sTitleRus, '', '[CLASS:Edit; INSTANCE:1]', "EditPaste", $sSerial)
ControlClick($sTitleRus, '', '[CLASS:Button; INSTANCE:3]')
WinWait($sTitle1Rus);ждем окно регистрации программы.
If Not WinActive($sTitle1Rus) Then WinActivate($sTitle1Rus)
ControlClick($sTitle1Rus, '', '[CLASS:SysLink; INSTANCE:2]');нажимаем на ссылку "Зарегистрироваться позже"
WinWait($sTitle1EnRus);ждем окно с текстом "Для завершения регистрации необходим перезапуск программы..."
If Not WinActive($sTitle1EnRus) Then WinActivate($sTitle1EnRus)
ControlClick($sTitle1EnRus, '', '[CLASS:Button; INSTANCE:1]') ;нажимаем на кнопку ДА, и программа сама перезапускается.
BlockInput(0);снимаем блокировку клавиатуры.
Содержание Serial.ini:
Код: Выделить весь код
[Data]
Key=XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:32, 02-05-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для wolkow70

Ветеран


Сообщения: 3206
Благодарности: 845

Профиль | Отправить PM | Цитировать


Creat0R,
Спасибо, работает.

-------
Человек человеку - друг, товарищ и волк!


Отправлено: 15:03, 02-05-2012 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Хранение серийного номера во внешнем файле.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Смена серийного номера Smarty Microsoft Windows 2000/XP 9 02-07-2009 18:21
Разное - Смена серийного номера на Win 2000 timur_m Лицензирование продуктов Microsoft 1 04-02-2009 15:05
Win 2003 - смена серийного номера Zorax Microsoft Windows NT/2000/2003 5 06-12-2007 10:36
Интеграция серийного номера в Win98 alex1999 Microsoft Windows 95/98/Me (архив) 4 20-10-2005 15:54
Ввод серийного номера-вопрос! ssi Хочу все знать 5 02-08-2004 11:17




 
Переход