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

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

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

(*.*)


Сообщения: 36567
Благодарности: 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

 

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


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

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


Попытался собрать из нескольких кодов нужный скрипт.
Для экрана 1024х768, движение курсора по кругу (в центре радиусом 300пикселей) скорость неполучается выставить 25 через команду Opt (mousemove), при этом удерживается правая кнопка мышки.
Старался вписать управление скриптом:
Pause - пауза
F9 - включить
F10 - остановить
Но при включении ахтунг получается - курсор движется по кругу удерживая кнопку все хорошо, НО процессор нагружает на 100% и не управляется ни стоп ни пауза только рестарт компа спасает.
Поправте пожалста скрипт или подскажите (мои эксперементы заканчиваются рестартом ПК)
PHP код: Выделить весь код

Global $Paused

HotKeySet
("{PAUSE}""TogglePause")
HotkeySet ("{F10}""Stop"       )
HotKeySet"{F9}""Start" )


;******** 
Script Pause **********
Func TogglePause()
    
$Paused NOT $Paused
    
While $Paused
        sleep
(100)
        
ToolTip('script is "Paused"',0,0)
    
WEnd
    ToolTip
("")
EndFunc

;********** Stop **********
Func Stop ()

While 
1
Sleep 
(600)
Wend

EndFunc

While (1)
BlockInput(1)
_MouseMoveCircle(5403903006251) ;(need opt speed 25Circle 4ever for resolution 1024x768 
Sleep
(200)

BlockInput(0)
 
WEnd
Func _MouseMoveCircle
($xPos$yPos$Radius$TimeExp$MouseClick=0); x coordy coordradiustime to loop (milliseconds)
    
Local $TimeInit TimerInit()
    
Local $xPosMov$yPosMov
    Local $MouseClick_Mark 
1

    
Do
        
$TimeDiff TimerDiff($TimeInit)
        
$xPosMov $xPos + ($Radius Sin($TimeDiff/100))
        
$yPosMov $yPos + ($Radius Cos($TimeDiff/100))
        
MouseMove($xPosMov$yPosMov1)
        If 
$MouseClick_Mark And $MouseClick <> 0 Then MouseDown("Right")
        
$MouseClick_Mark 0
    Until $TimeDiff 
$TimeExp
    
If $MouseClick <> 0 Then MouseUp("Right")
    
EndFunc 


Отправлено: 23:42, 04-01-2008 | #931



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

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


Аватара для Creat0R

Must AutoIt


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

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


Вложения
Тип файла: zip System Dialog UDFs.zip
(6.6 Kb, 10 просмотров)

Maza Faka,
Цитата:
Ругается на
Тогда должен ругаться и на многое дргое - я всего лишь привёл подправленную функцию из _FileSelectFolder.au3...

Прикрепляю полный набор самопальных функции системных диалогов + Примеры применения (файл Examples.au3).
За большенство из которых (как функции так и примеров) большое спасибо amel27

Только для AutoIt 3.2.10.0.

Зеркало для тех кто неможет скачать с форума.

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

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

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:17, 05-01-2008 | #932


Аватара для Creat0R

Must AutoIt


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

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


kagorec,
Цитата:
НО процессор нагружает на 100% и не управляется ни стоп ни пауза только рестарт компа спасает.
Конечно не будет управляться, ведь BlockInput не даёт ничего нажать.
Я выкрутился быстрым нажатием «Alt + Ctrl + Del» и «Pause»

Тут видимо это происходт из за постоянного цикла внутри _MouseMoveCircle - можно поставить в нём проверку на ввод пользователя, и небольшую паузу...

Вот простой пример, для наглядности, я BlockInput закомментировал

Код: Выделить весь код
Global $Paused = False

HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "QuitApp")

While 1
    While $Paused
        Sleep(100)
        ToolTip('script is "Paused"',0 , 0)
    WEnd

    ToolTip("")

    ;BlockInput(1)
    _MouseMoveCircle(540, 390, 300, 625, 1) ;(need opt speed 25) Circle 4ever for resolution 1024x768
    Sleep(200)
    ;BlockInput(0)
WEnd

Func TogglePause()
    $Paused = NOT $Paused
EndFunc

Func _MouseMoveCircle($xPos, $yPos, $Radius, $TimeExp, $MouseClick=0); x coord, y coord, radius, time to loop (milliseconds)
    Local $TimeInit = TimerInit()
    Local $xPosMov, $yPosMov
    Local $MouseClick_Mark = 1

    Do
        $TimeDiff = TimerDiff($TimeInit)
        $xPosMov = $xPos + ($Radius * Sin($TimeDiff/100))
        $yPosMov = $yPos + ($Radius * Cos($TimeDiff/100))
        MouseMove($xPosMov, $yPosMov, 1)
        If $MouseClick_Mark = 1 And $MouseClick <> 0 Then MouseDown("Right")
        $MouseClick_Mark = 0

        If $Paused Then ExitLoop
        Sleep(10)
    Until $TimeDiff > $TimeExp
    If $MouseClick <> 0 Then MouseUp("Right")
EndFunc

Func QuitApp()
    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


Отправлено: 02:36, 05-01-2008 | #933


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


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

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


Подскажите как с помощью Autoit удалить раздел реестра и все ключи в нем?

HKEY_LOCAL_MACHINE\SOFTWARE\TEST\

или все ключи в разделе

HKEY_LOCAL_MACHINE\SOFTWARE\TEST\*.REG_BINARY

Буду рад помощи

Отправлено: 02:57, 05-01-2008 | #934


Аватара для Creat0R

Must AutoIt


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

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


rimm,
Цитата:
как с помощью Autoit удалить раздел реестра и все ключи в нем?
Код: Выделить весь код
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\TEST")
Для удаления определённых типов записей, можно использовать RegEnumVal()...

Код: Выделить весь код
For $i = 1 To 100
    $Var = RegEnumVal("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\Autoit", $i)
    If @error Then ExitLoop

    MsgBox(4096, "Value Name  #" & $i & " under in AutoIt3 key", $Var & @LF & "Extended: " & GetExtendedType(@extended))
Next

Func GetExtendedType($Extended)
    Local $RegTypeArr[6] = [5, "REG_SZ", "REG_MULTI_SZ", "REG_EXPAND_SZ", "REG_DWORD", "REG_BINARY"]
    For $i = 1 To 5
        If $Extended = $i Then Return $RegTypeArr[$i]
    Next
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

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

Отправлено: 03:20, 05-01-2008 | #935


Аватара для Creat0R

Must AutoIt


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

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


Библиотека автоматизации для браузера Opera!

24 (планируется ещё больше) полезных функции для решения задач связанных с браузером Opera.

Примечание: Библиотека тестировалась под Opera начиная с версии 8.54 и до версии 9.5.

[Страница закачки], [Зеркало]

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

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

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

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

Отправлено: 09:22, 05-01-2008 | #936


Ветеран


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

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


Ребят, а с помощью AutoIt'а можно реализовать блокировку клавиатуры и мыши при запуске скрипта - и последующей разблокировкой например нажатием каких либо сочетаний клавиш?

-------
All my homies dont play better watch what you say and put your glock away, ease back, ease back, ease back before i squeeze that...


Отправлено: 19:46, 06-01-2008 | #937


Аватара для Creat0R

Must AutoIt


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

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


SAOPP,
Цитата:
с помощью AutoIt'а можно реализовать блокировку клавиатуры и мыши при запуске скрипта
Да, есть команда BlockInput(1), соответственно BlockInput(0) отменит блокирование... Alt+Ctrl+Del в любом случае разблокирует ввод .

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

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

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:41, 06-01-2008 | #938


Ветеран


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

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


Ну вот мне бы так и нужно, как "некая" утилитка для чистки клавиатуры блокирует это дело, только без всяких оповещений и окон, просто блокировала, а по нажатию ctrl+alt+del разблокировала и закрывалась соответственно.

-------
All my homies dont play better watch what you say and put your glock away, ease back, ease back, ease back before i squeeze that...


Отправлено: 23:03, 06-01-2008 | #939


Аватара для Creat0R

Must AutoIt


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

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


SAOPP,
Цитата:
мне бы так и нужно, как "некая" утилитка для чистки клавиатуры
Эта утилитка?

Цитата:
только без всяких оповещений и окон, просто блокировала, а по нажатию ctrl+alt+del разблокировала и закрывалась
Всё очень просто:

Код: Выделить весь код
#NoTrayIcon

$aOld_MousePos = MouseGetPos()

BlockInput(1)

While 1
    Sleep(100)
    $aNewMousePos = MouseGetPos()
    If $aOld_MousePos[0] <> $aNewMousePos[0] Or $aOld_MousePos[1] <> $aNewMousePos[1] Then ExitLoop
WEnd

BlockInput(0)
Скрипт завершит работу после любого движения мышки

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

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

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


Отправлено: 00:02, 07-01-2008 | #940



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




 
Переход