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

Компьютерный форум 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

 

Аватара для Creat0R

Must AutoIt


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

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


Как получить пути к системным папкам, не используя COM-обьекты? (Shell.Application к примеру, не на всех системах будет корректно работать).

Реестр тоже отпадает, там нет того что нужно (например “Мои видеозаписи” там и близко нет).

На данный момент нужно именно для “Мои видеозаписи”, но в частности хотелось бы и к другим папкам.

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

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

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


Отправлено: 02:51, 16-11-2007 | #731



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

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


Googler


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

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


Цитата Creat0R:
“Мои видеозаписи” там и близко нет »
неправда: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders, параметр: "My Video"
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:11, 16-11-2007 | #732


Аватара для Creat0R

Must AutoIt


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

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


amel27,
Цитата:
неправда: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
Хм, поиск по “Мои видео” не дал результатов... спасибо.
Насколько “надёжна” эта ветка? она там присутствует на всех Win-системах?

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

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

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


Отправлено: 03:35, 16-11-2007 | #733


Googler


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

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


Цитата Creat0R:
Насколько “надёжна” эта ветка? »
ИМХО вполне надежна для тех ОСей, в которых такая папка определена в профиле - в Win2K к примеру ее не было... в XP она тоже не всегда присутствует, но в этом случае значение параметра "пусто"
Это сообщение посчитали полезным следующие участники:

Отправлено: 04:03, 16-11-2007 | #734


Аватара для Creat0R

Must AutoIt


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

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


amel27,
Ок, Спасибо.

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

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

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:19, 16-11-2007 | #735


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


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

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


в хелпе к AUTOIT есть:
Цитата:
Таким образом, если сценарий запущен с помощью строки:
AutoIt3.exe myscript.au3 param1 "а это другой параметр"
то после загрузки в нем можно использовать следующий специальный массив:
$CmdLine[0] равно... 2
$CmdLine[1] равно... param1
$CmdLine[2] равно... а это другой параметр
@ScriptName равно... myscript.au3
так вот проблема в том что "а это другой параметр" в $CmdLine[2] обрезается до первого пробела!
вызывал из батнега:
%path_cmdutils%\Autoit3.exe %~dp0\FlashPlayerUpdate.au3 /p %AppPath%
как надо правильно если в значении %AppPath% есть пробелы?


от нефиг делать написал скрипт который проходит головоломку за меня методом тыка.
Может кто подаст идею какое условие в таком скрипте должно отследить успешное срабатывание чтобы сделать exitloop?
Код: Выделить весь код
;Поочерёдный кликер в разные области экрана
;Copywrite by Vovan [CAD/EDP]

;Отображать текущую строку сценария с помощью индикатора системной панели в режиме отладки.
AutoItSetOption("TrayIconDebug", 1)

;запускать после открытия окна браузера
Run('C:\Program Files\Internet Explorer\iexplore.exe http://newyorkdesign.hp.infoseek.co.jp/findit.html')
;дожидаемся активности окна 
WinWaitActive('findit - Microsoft Internet Explorer','')
;настройка мыши на коортдинатны окна
Opt("MouseCoordMode",2)

;координаты угла флешки
$absx=332
$absy=279

;ожидание загрузки страницы
Sleep(4000)
;кликнуть по "Start"
Sleep(500)
mouseclick("left",$absx+284,$absy+327,1)
;прокликать поочерёдно по пикселям
for $y=0 to 400 step 10
 for $x=0 to 600 step 10
  WinWaitActive('findit - Microsoft Internet Explorer','')
  mouseclick("left",$absx+$x,$absy+$y,1)
  Sleep(300)
  ;нажимаем кнопку "try again"
  Send('{TAB}')
  Send('{SPACE}')
 next
next
Вообще что лучше использовать для управления веб интерфейсами autoit или autohotkey?

Отправлено: 19:12, 16-11-2007 | #736


Аватара для Creat0R

Must AutoIt


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

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


V0van3,
Цитата:
как надо правильно если в значении %AppPath% есть пробелы?
Заключить переменную в кавычки:

Код: Выделить весь код
%path_cmdutils%\Autoit3.exe "%~dp0\FlashPlayerUpdate.au3" /p "%AppPath%"
Цитата:
какое условие в таком скрипте должно отследить успешное срабатывание чтобы сделать exitloop?
Срабатывание чего? из скрита непонятно какова цель..

А вообще, для таких задач (автоматизации Internet Explorer), есть встроенная библиотека IE.au3, там можно запустить адрес в IE, и функция будет ждать окончания загрузки страницы, также можно нажать на ссылку/кнопку зная заранее только её текст, и т.д и т.п.

Цитата:
то лучше использовать для управления веб интерфейсами autoit или autohotkey?
Думаю что они оба не подходят для этой задачи, хотя если только IE, тогда AutoIt для этого вооружён

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

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

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


Отправлено: 23:45, 16-11-2007 | #737


Аватара для Creat0R

Must AutoIt


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

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


Ещё один сюрприз от разработчиков!

В последней бетте добавили поддержку DllCallBack!!!

Цитата http://www.autoitscript.com/forum/index.php?showtopic=19717&st=330&:
3.2.9.12 (17th November, 2007) (Beta)

- Added: DllCallbackRegister(), DllCallbackGetPtr() and DllCallbackFree()
Библиотека DllCallBack.au3 полагаю уже будет не нужна

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

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

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

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

Отправлено: 22:01, 17-11-2007 | #738


Аватара для Creat0R

Must AutoIt


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

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


Имитация телефонного звонка:

Код: Выделить весь код
HotKeySet("{Esc}", "Quit")

_PhoneRing(8)

;===============================================================================
;
; Function Name:    _PhoneRing()
; Description:      Beep Sound Imitation of Phone Rings.
; Parameter(s):     $iRings [Optional] - Rings to beep (5 is the default),
;                       If $iRings > 0 Then this time of rings will be sounded.
;                       If $iRings < 0 Then number after - sign will be used to indicate how long (seconds) the function will ring.
;                       If $iRings = 0 Then the function will ring (loop) forever :)
;                   $iDuration [Optional] - Duration of the Ring to beep (15 is the default).
;                   $iWait - [Optional] How long to wait between each rings in milleseconds (1500 is the default).
;
; Return Value(s):  Always returns 1 regardless of success.
; Requirement(s):   None.
; Author(s):        G.Sandler (a.k.a CreatoR).
;
;===============================================================================
Func _PhoneRing($iRings=5, $iDuration=15, $iWait=1500)
    Local $iCount = 0, $iTimerInit = TimerInit()
    While 1
        $iCount += 1

        For $i = 1 To $iDuration
            Beep(1000, 35)
            Beep(2000, 30)
            Beep(1500, 25)
        Next

        If $iRings > 0 And $iCount = $iRings Then Return 1
        If $iRings < 0 And TimerDiff($iTimerInit) / 1000 >= -$iRings Then Return 1

        Sleep($iWait)
    WEnd
EndFunc

Func Quit()
    Exit
EndFunc

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

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

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


Отправлено: 01:14, 20-11-2007 | #739


Аватара для Creat0R

Must AutoIt


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

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


GuiCtrlSetOnHover() UDF!

Эта функция предназначена для управления элементами при наведении курсора мышки над ними (Hovering Process), используется точно также как и подобные функции GuiCtrlSetOnEvent().

Вот пример, создаёт алфавит из кнопок, когда проводим мышкой по кнопкам, они красятся в красный цвет, также обратите внимание - это будет работать даже если GUI окно не активно, и даже если запущен обычный MsgBox !!! (нажмите на кнопку буквы).

Код: Выделить весь код
#include <GuiCtrlSetOnHover_UDF.au3>
Opt("GuiOnEventMode", 1)

$Btn_Color = 0x7A9DD8
$Hover_Color = 0xFF0000

$GUIMain = GuiCreate("GuiCtrlSetOnHover - Letters Demo", 570, 200)
GUISetOnEvent(-3, "Quit")

GUICtrlCreateLetters(10, 60, 18, 20)

$Close = GuiCtrlCreateButton("Close", 30, 120, 100, 30)
GUICtrlSetOnEvent($Close, "Quit")

GuiSetState()

While 1
    Sleep(100)
WEnd

Func GUICtrlCreateLetters($iLeft, $Top, $Width=15, $Height=15)
    Local $iLeft_Begin = $iLeft
    Local $iAsc_Char = 64
    For $i = 0 To 25
        $iLeft_Begin += 20
        $iAsc_Char += 1
        GUICtrlCreateButton(Chr($iAsc_Char), $iLeft_Begin, $Top, $Width, $Height)
        GUICtrlSetOnEvent(-1, "LetterEvents")
        GUICtrlSetOnHover(-1, "Hover_Func", "Leave_Hover_Func")
        GUICtrlSetBkColor(-1, $Btn_Color)
        GUICtrlSetFont(-1, 6)
    Next
EndFunc

Func LetterEvents()
    MsgBox(64, "Pressed", "Letter = " & GUICtrlRead(@GUI_CtrlId))
EndFunc

Func Hover_Func($CtrlID)
    GUICtrlSetBkColor($CtrlID, $Hover_Color)
EndFunc

Func Leave_Hover_Func($CtrlID)
    GUICtrlSetBkColor($CtrlID, $Btn_Color)
EndFunc

Func Quit()
    Exit
EndFunc
Сам UDF скачать можно тут.
История зарождения функции на оф. форуме .

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

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

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

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

Отправлено: 14:30, 20-11-2007 | #740



Компьютерный форум 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




 
Переход