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

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

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

(*.*)


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


Конфигурация

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


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







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


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


Сайт программы
Русская справка
Коллекция AutoIt скриптов от Sanja Alone
Коллекция AutoIt скриптов от MSFN (могут быть устаревшие).
Справочник по командам rundll32 (команды запуска диалоговых окон и не только...)

AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо).



Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров.
Цитата Vadikan:
В теме уже свыше 500 сообщений и поиск нужной информации в ней усложняется. Есть предложение собрать все решения (скрипты) и разместить их на Wiki по принципу "один скрипт - одна статья wiki", добавляя статьи в категорию Autoit. Речь, в принципе, идет об общих решениях, а не о скриптах для установки конкретной программы. Название статьи, очевидно, должно отражать назначение скрипта. Затем можно в шапке просто разместить ссылки на статьи Wiki.

-------
Канал Windows 11, etc | Чат @winsiders

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

Отправлено: 00:02, 05-02-2006

 

Аватара для Maza Faka

Ветеран


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

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


Creat0R
В итоге сделал так:
Код: Выделить весь код
Dim $dest = "c:\Адреналин.avi", $i = 0
Run(@ComSpec & " /c copy /y d:\Video\Films\Адреналин.avi " & $dest, "", @SW_HIDE)

ProgressOn("Please wait...", "Copying file", "", -1, -1, 16)
AdlibEnable("Check", 500)

While 1
    Sleep(100)
WEnd

Func Check()
    If FileMove($dest, $dest, 1) Then
        AdlibDisable()
        ProgressSet(100, "Done")
        Sleep(500)
        Exit
    Else
        $i += 10
        If $i > 100 Then $i = 0
            ProgressSet($i, "file copyied")
        EndIf
    EndFunc

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение


Отправлено: 16:12, 04-09-2007 | #421



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

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


Аватара для Creat0R

Must AutoIt


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

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


Maza Faka,
Цитата:
В итоге сделал так:
Тоже вариант. А зачем делать If FileMove($dest, $dest, 1) Then? можно просто проверять завершился ли дочерний процесс (PID возвращённый от Run() ).
Я кстати в своём примере немного переборщил - Нужно было наоборот, запускать в главном цикле сам прогресс, а в отдельном процессе копирование, и тогда скррипт намного аккуратнее и короче:

Код: Выделить весь код
Dim $source = "d:\Video\Films\Адреналин.avi", $dest = "c:\Адреналин.avi", $i = 0

ProgressOn("Please wait...", "Now copying file", "", -1, -1, 16)

$CopyPid = Run(@AutoItExe & ' /ErrorStdOut /AutoIt3ExecuteLine "FileCopy(''' & $source & ''', ''' & $dest & ''')"')
While ProcessExists($CopyPid)
    $i += 1
    If $i = 100 Then $i = 0
    ProgressSet($i, $i & " percent")
    Sleep(200)
 Wend

ProgressSet(100, "Done")
Sleep(1000)
ProgressOff()

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

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

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


Отправлено: 17:18, 04-09-2007 | #422


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


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

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


Creat0R
Цитата:
Вопрос только в том, какой метод болшье использует ресурсов, ведь в твоём примере используется Dll'ка (посылая сообщения) при каждом нажатии мышки... а в моём примере при движении мышки
А может наоборот... В твоём примере при каждом движении мышки, а в моём примере только при нажатии? Как бы там ни было у тебя используются две функции, а у меня всего одна.
P.S. ...имхо, не предмет для спора, оба варианта хороши.

Отправлено: 03:52, 05-09-2007 | #423


Аватара для Creat0R

Must AutoIt


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

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


Diamond,
Цитата:
А может наоборот... В твоём примере при каждом движении мышки, а в моём примере только при нажатии?
Ну я вроде так и написал (в обратном порядке).

Цитата:
у тебя используются две функции, а у меня всего одна
Да, вторая чтобы определить где находиться курсор, чтобы не тащить окно если курсор мышки, к примеру, над линией границы окна, или над Title Bar...

Цитата:
не предмет для спора
Я не ради спора (вообще спорить не люблю), я просто привёл альтернативу которой до сих пор сам пользовался, теперь точно буду использовать твой метод, он менее требователен к ресурсам и быстро применим к разным скриптам .

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

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

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


Отправлено: 04:08, 05-09-2007 | #424


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


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

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


Creat0R,
Цитата:
Ну я вроде так и написал (в обратном порядке).
Значит я неправильно понял...
Цитата:
я просто привёл альтернативу которой до сих пор сам пользовался, теперь точно буду использовать твой метод, он менее требователен к ресурсам и быстро применим к разным скриптам
А я использовал метод со стилем, думаю что он совсем не требователен к ресурсам, но считаю что этот метод "не оригинален":
Код: Выделить весь код
#include <GuiConstants.au3>
$HWnd = GUICreate("DRAG_ELEMENT",320,240,-1,-1,$WS_OVERLAPPEDWINDOW)

;~ --- Фоновое изображение (должно быть первым элементом!):
$BgPic=GUICtrlCreatePic(@WindowsDir & '\Web\Wallpaper\Windows XP.jpg',0,0,800,600)
   GUICtrlSetPos      (-1,0,0,320,240)
   GUICtrlSetResizing (-1,$GUI_DOCKBORDERS)
   GUICtrlSetState    (-1,$GUI_DISABLE)

;~ --- Все остальные элементы:
$butt1=GUICtrlCreateButton("test_button",10,10,70,20)
;~ ...и т.д.

;~ --- Элемент перетаскивания (должен быть последним!):
$DRAG_ELEMENT=GUICtrlCreatePic('',0,0,320,240,-1,$GUI_WS_EX_PARENTDRAG)
   GUICtrlSetResizing(-1,$GUI_DOCKBORDERS)

GUISetState()

While 1
   $msg = GUIGetMsg()
   Switch $msg
      Case $GUI_EVENT_CLOSE
         Exit
   EndSwitch
WEnd

Отправлено: 08:03, 06-09-2007 | #425


Старожил


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

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


Помогите разобраться:
при установке из командной строки - все ОК!

Код: Выделить весь код
start /wait msiexec.exe /i "PROMT Expert 7 Giant.msi"KBRIYPGWNEULCSJAQHXOFVM=хххххххх pidkey=хххххххххх-хххх /qb
а из под AutoIt ну ни как

Код: Выделить весь код
Global $file=@ScriptDir & '\PROMT Expert 7 Giant.msi'
  ;установка PROMT Expert 7 Giant
  RunWait ( 'msiexec /i' & $file & " KBRIYPGWNEULCSJAQHXOFVM=" & 'хххххххх' & " pidkey=" & 'хххххххххх-хххх' & ' /qb' )
переименовываю PROMT Expert 7 Giant.msi в setup.msi

Код: Выделить весь код
Global $file=@ScriptDir & '\setup.msi'
  ;установка PROMT Expert 7 Giant
  RunWait ( 'msiexec /i' & $file & " KBRIYPGWNEULCSJAQHXOFVM=" & 'хххххххх' & " pidkey=" & 'хххххххххх-хххх' & ' /qb' )
все ставится.
В чем моя проблема?

Последний раз редактировалось gvshil, 07-09-2007 в 18:35.


Отправлено: 17:17, 07-09-2007 | #426


Аватара для Creat0R

Must AutoIt


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

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


gvshil,
Цитата:
В чем моя проблема?
Полагаю что в первом случае, из за того что присутствуют пробелы путь оказывается неверным...

Код: Выделить весь код
Global $file=@ScriptDir & '\PROMT Expert 7 Giant.msi'  ;установка PROMT Expert 7 Giant
 RunWait ('msiexec.exe /i "' & $file & '" KBRIYPGWNEULCSJAQHXOFVM=хххххххх pidkey=хххххххххх-хххх /qb')

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

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

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

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

Отправлено: 17:46, 07-09-2007 | #427


Старожил


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

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


Creat0R,
Цитата Creat0R:
из за того что присутствуют пробелы путь оказывается неверным.. »
а как это исправить? Не знаю, как в командной стоке не получается (с кавычками..)

Отправлено: 18:13, 07-09-2007 | #428


Аватара для Creat0R

Must AutoIt


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

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


gvshil,
Цитата:
а как это исправить?
Ты пробовал пример что я дал? он не работает?

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

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

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


Отправлено: 20:42, 07-09-2007 | #429


Старожил


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

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


Creat0R,
Спасибо огромное, все работает. Не посмотрел, думал, что повтор моего куска!

Отправлено: 20:58, 07-09-2007 | #430



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

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

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




 
Переход