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

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

Закрытая тема
Настройки темы
[Архив - Часть 1.3] AutoIt скрипты

Старожил


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

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


Изменения
Автор: Vadikan
Дата: 25-01-2008
Внимание!
Тема переведена в архивное состояние





(настоятельно рекомендуется к прочтению/поиску)


Руководство к действию по работе c AutoIt.

Помогите пожалуйста. Нужен маленький скриптик для решения некоторых рутинных задачь.
Вот что нужно сделать последовательно:

1) в папке DIR1 находим и удаляем файлы в названии которых присутствует text_1
2) в папке DIR2 находим xxx.sif и удаляем строки, в которых присутствует text_1
3) в папке DIR3 находим xxx.inf и добавляем в его секцию [XXX] несколько строчкек (text_2, text_3, ..., text_n)
4) в папке DIR4 находим yyy.inf ищем в его секции [YYY] text_4 и заменяем его на text_5
5) сохраняем все изменения и выводим отчёт о проделанной работе :-)

Заранее благодарен.

Отправлено: 05:05, 03-12-2006

 

Пользователь


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

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


Creat0R
Рад, что пригодилось. Собирал информацию как говориться с мира по нитке.
Вот только мне не нравиться что эти функции цвета переворачивают с RGB на GBR, надо будет потом поправить...

Отправлено: 14:13, 28-05-2007 | #441



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

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


Пользователь


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

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


Creat0R
Поправил. Теперь только RGB.

Отправлено: 09:18, 29-05-2007 | #442


Новый участник


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

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


Я написал AutoIt скрипт который автоматически закрывает рекламное окно в visicom 2003:

;Отслеживает и закрывает рекламное окно
;скрыть в системной панели индикатор AutoIt
;AutoItSetOption("TrayIconHide", 1)
;Отображать текущую строку сценария с помощью индикатора системной панели в режиме отладки.
AutoItSetOption("TrayIconDebug", 1)
AutoItSetOption("SendKeyDelay", 15)
;Переходим в папку с visicom
;FileChangeDir('%1%')
FileChangeDir('c:\temp\Visicom')
Run('Vcmurbas.exe')
WinWaitActive('','')
ControlClick('','Вход','Button1')
;MsgBox(4096, "", ProcessExists("mmc.exe"))
;включить режим поиска в окнах-потомках
Opt("WinSearchChildren", 1)
While ProcessExists("ntvdm.exe")<>0
;дожидаемся активности окна с рекламой
WinWait('Внимание!','Подробнее...')
WinClose('Внимание!','Подробнее...')
Sleep(200)
WEnd

запускаю %path_cmdutils%\Autoit3.exe Visicom.au3 %visicom_path% (переменные объявлены и заданы верно)
Работает (рекламные окна закрывает), но не отслеживает закрытия visicom и скрипт продолжает зацикливаться.

Прикол в том что vcmurbas.exe запущен через NTVDM и в явном виде его ProcessExists не видет

система Win2kSP4en, что посоветуете? Как это можно обойти?



Отправлено: 15:06, 29-05-2007 | #443


Googler


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

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


V0van3
Цитата:
vcmurbas.exe запущен через NTVDM и в явном виде его ProcessExists не видет
так вроде работает:
Код: Выделить весь код
$pid = Run("Vcmurbas.exe")

While ProcessExists($pid)
  Sleep(200)
WEnd

Отправлено: 03:25, 30-05-2007 | #444


Аватара для mariolast

Ветеран


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

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


Клевая прога для работы с телефонной книгой, картинками, мелодиями и т.п. для целой кучи 357 видов мобил
Скачать http://download.mobiledit.com/mobiledit!/MOBILedit!.exe
Русик http://msilab.net/show.php?rus=1033
Наброски AutoIt скрипта http://forum.oszone.net/showthread.p...697#post592697

Цитата из Шапки темы:
Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений"

Последний раз редактировалось jameszero, 31-05-2007 в 08:35. Причина: оффтоп и дублирование поста


Отправлено: 09:32, 30-05-2007 | #445


Аватара для voler

Ветеран


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

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


Вот написал скрипт для установки Adobe Acrobat 7.0.0 Professional но видимо где то проблема с нажатием кнопки, так как вылетает сообщение уверены что хотите отменить установку Adobe Acrobat 7.0.0 Professional, и скрипт авто отвечает нет и установка идет далее. Проверял все кнопки все, вроде указано верно в чем может быть проблема?

HTML код: Выделить весь код
#cs ---------------------- Приложение: Adobe Acrobat На какой(их) версии(ях) тестировалось: 7.0.0 Professional Автор скрипта: Voler ---------------------- #ce ;предотвращение возможности множественного запуска скрипта If WinExists(@ScriptName) Then Exit AutoItWinSetTitle(@ScriptName) ;Отображать текущую строку сценария с помощью индикатора системной панели в режиме отладки. AutoItSetOption("TrayIconDebug", 1) ; Установка переменных Global $file='setup.exe', $key='keygen.exe', $AvtCode, $ACStr Run ( $file ) ;Splash WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;Welcome to the Adobe Acrobat 7.0 Professional Setup WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) Sleep ( 500 ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;Click Next to view the End User License agreement. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;End User License agreement. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button2' ) ;Customer Information. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;Cache the Installer Files. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;PDFMaker Installation and Integration Information. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ;Please select a setup type. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button5' ) ;Destination Folder. WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' ) ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', '', 'Button1' ) ; рапорт инсталятора о готовности к установки WinWait ( 'Adobe Acrobat 7.0 Professional','Ready to Install the Program' ) WinWaitActive ( 'Adobe Acrobat 7.0 Professional','Ready to Install the Program' ) ControlClick ( 'Adobe Acrobat 7.0 Professional', 'Ready to Install the Program', 'Button1' ) ; активация - начало WinWait ( 'Adobe Acrobat Installer','Activation Options' ) ;это окно иногда появляется, а иногда нет. Закономерность появления не найдена. If WinExists ( 'Adobe Acrobat Installer', 'Activate Using the Internet' ) Then WinActivate ( 'Adobe Acrobat Installer', 'Activate Using the Internet' ) WinWaitActive ( 'Adobe Acrobat Installer', 'Activate Using the Internet' ) ControlClick ( 'Adobe Acrobat Installer', 'Activate Using the Internet', 'Button3' ) EndIf ; продолжение активации - выбираем активировать по телефону WinWaitActive ( 'Adobe Acrobat Installer','Activation Options' ) Sleep ( 500 ) ControlClick ( 'Adobe Acrobat Installer','Activation Options', 'Button2' ) Sleep ( 500 ) ControlClick ( 'Adobe Acrobat Installer','Activation Options', 'Button7' ) exit


Последний раз редактировалось voler, 31-05-2007 в 15:56.


Отправлено: 08:06, 31-05-2007 | #446


Googler


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

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


voler
Цитата:
в чем может быть проблема?
проблема очевидна - при появлении окна отрабатывают сразу все 9 ControlClick'ов, т.е. для Button1, Button2, Button5, так как эти окна ничем не отличаются - используйте для идентификации текст окна. Кроме того:

- "предотвращение возможности множественного запуска скрипта" работать не будет, используйте функцию ProcessList();
- если окно может не появиться используйте WinWait() / WinWaitActive() с таймаутом ожидания.
- автоматизацию keygen'а лучше с форума убрать, задавайте вопросы по существу.

Отправлено: 11:39, 31-05-2007 | #447


Новый участник


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

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


Сейчас объясню. У меня есть программа в папке, где такое дерево каталогов.

\
\Files

Мне надо, чтобы открывался txt файл, который лежит в папке \Files


Как мне такое сделать.. (Или как вообще txt открыть...)

Отправлено: 15:29, 31-05-2007 | #448


Аватара для voler

Ветеран


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

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


Цитата:
проблема очевидна - при появлении окна отрабатывают сразу все 9 ControlClick'ов, т.е. для Button1, Button2, Button5, так как эти окна ничем не отличаются - используйте для идентификации текст окна. Кроме того:
Скажи ты имеешь ввиду вставлять текст в

WinWaitActive ( 'Adobe Acrobat 7.0 Professional - Setup' )
ControlClick ( 'Adobe Acrobat 7.0 Professional - Setup', 'Вот Сюда?', 'Button1' ) И какой текст вводить?

HTML код: Выделить весь код
&Next > &Cancel < &Back The Wizard will install Adobe Acrobat 7.0 Professional on your computer. To continue, click Next. WARNING: This program is protected by copyright law and international treaties. BmpDlgImage InstallShield InstallShield Welcome to the Adobe Acrobat 7.0 Professional Setup


Последний раз редактировалось voler, 31-05-2007 в 16:20.


Отправлено: 16:00, 31-05-2007 | #449


Аватара для DenchikK

Старожил


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

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


Не могу понять, как осуществить задуманное.
Идея такая:
Надо в программе заполнять 3 поля: ссылка, логин, пароль.
Список ссылок, логинов и паролей находится в файлах links.txt, logins.txt, pass.txt
Для одной ссылки, пароля и логина я знаю как это делается:

Код: Выделить весь код
#include <GUIConstants.au3>

If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)
AutoItSetOption("TrayIconDebug", 1)
AutoItSetOption("SendKeyDelay", 60)
AutoItSetOption("MouseCoordMode", 0)

Global $file, $line_logins, $line_pass, $line_links

; Чтение Файла С Логинами

$file = FileOpen("logins.txt", 0)

If $file = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
EndIf

$line_logins = FileReadLine($file)

FileClose($file)

; Чтение Файла С Паролями

$file = FileOpen("pass.txt", 0)

If $file = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
EndIf

$line_pass = FileReadLine($file)

FileClose($file)

; Чтение Файла С Линками

$file = FileOpen("links.txt", 0)

If $file = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
EndIf

$line_links = FileReadLine($file)

FileClose($file)

; Запуск программы

Run ('avaload.exe')

; Построение GUI

GUICreate("Автозаполнение", 330, 300)

$checkCN1 = GUICtrlCreateCheckbox ($line_logins, 10, 10, 180, 20)
$checkCN2 = GUICtrlCreateCheckbox ("CHECKBOX 2", 10, 30, 180, 20)
$checkCN3 = GUICtrlCreateCheckbox ("CHECKBOX 3", 10, 50, 180, 20)

$Start = GUICtrlCreateButton("Заполнить", 200, 10, 120, 20)
$Close = GUICtrlCreateButton("Выход", 200, 30, 120, 20)

GUISetState ()

; Основная Работа Скрипта

While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE  Or $msg = $Close Then 
        Exit

ElseIf $msg = $Start Then

       If GUICtrlRead($checkCN1) = 1 Then
                     WinActivate ("AvaRemoteLoad")
                     ControlSetText ( 'AvaRemoteLoad', '', 'Edit1', $line_links )
                     ControlSetText ( 'AvaRemoteLoad', '', 'Edit2', $line_logins)
                     ControlSetText ( 'AvaRemoteLoad', '', 'Edit3', $line_pass )
        EndIf

        If GUICtrlRead($checkCN2) = 1 Then
                     MsgBox(0,"Установка","Чекбокс 2",1)
        EndIf

        If GUICtrlRead($checkCN3) = 1 Then
                     MsgBox(0,"Установка","Чекбокс 3",1)
        EndIf

EndIf
WEnd
а вот как переделать это под список - чтоб чекбоксов появлялось столько, сколько записей.

И ещё наверное, либо есть способ чтоб выделялся только один чекбокс, либо надо будет переделать под radiobutton.

Заранее благодарен за любую помощь.

Отправлено: 16:08, 31-05-2007 | #450



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Открывая 7z архив пишет не удаётся открыть как архив. Можно ли его восстановить? DreDo Хочу все знать 4 01-12-2009 18:54
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:. Vadikan AutoIt 1543 18-01-2009 10:46
[архив - Часть 2] AutoIt скрипты Vadikan AutoIt 985 21-01-2008 09:58
[Архив - Часть 1.2] AutoIt скрипты Dirk Diggler AutoIt 505 02-12-2006 11:00
[Архив - Часть 1.1] AutoIt скрипты EgOrus AutoIt 335 04-02-2006 16:58




 
Переход