Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 3)

Модерирует : gyra, Maz

gyra (23-01-2020 10:51): AutoIT (Часть 4)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
Описание:

Цитата:
AutoIt v3 - это язык для написания сценариев, напоминающий BASIC. Основным его назначением является автоматизация работ с Windows GUI (графическим интерфейсом пользователя MS Windows). Для выполнения этой сложной задачи предоставляется комбинация испытанных методов, включающих в себя эмуляцию нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами. Как показывает практика, эти "приводные ремни" весьма эффективны для получения работающих решений в ситуациях, когда другие стандартные средства (например, VBScript и SendKeys) оказываются бессильны.
Умеет он очень и очень многое! Бесплатный.

 
  • Справки
  • Инструменты
  • Ресурсы, посвящённые AutoIt
  • Полезные советы новичкам и не только
  • Готовые решения
  • Скрипт раскраски кода AutoIt для публикации в форумах
     


     
    За шапкой следит ViSiToR / AZJIO  

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 13:07 01-06-2010 | Исправлено: Maz, 12:29 10-01-2020
    Zloy_Gelud



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть такая функция:

    Код:
    Func IsDeviceConnected()
        While 1
            If _Android_IsOnline() Then
                _GUICtrlStatusBar_SetText($StatusBar, 'ZTE X9180 device is connected and ready.', 1)
            Else
                _GUICtrlStatusBar_SetText($StatusBar, 'Search for connected USB devices...', 1)
            EndIf
            Sleep(500)
        WEnd
    EndFunc   ;==>IsDeviceConnected

    Но из-за нее я не могу выйти из приложения. Кнопка "Закрыть" не реагирует на нажатие.
    Можно ли что-нибудь придумать? Решено.

    Всего записей: 3267 | Зарегистр. 30-05-2007 | Отправлено: 16:18 08-06-2015 | Исправлено: Zloy_Gelud, 16:33 08-06-2015
    dinis124

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет парни. Хотелось бы защитить код скрипта. Что то можете посоветовать? Я понимаю конечно, захотят и не такое ломанут, но все же кривые ручки алчных перепаковщиков остановят. Есть что посоветовать?

    Всего записей: 143 | Зарегистр. 12-09-2011 | Отправлено: 15:52 27-06-2015
    NIKZZZZ



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dinis124
    Ну, можно воспользоваться встроенными средствами - Stripper позволит сделать исходный текст не читаемым, разобраться с ним будет проблема.
    Программ для шифрования достаточно много, мне, например, понравился MoleBox , но, к сожалению, все можно достаточно легко вскрыть, так-как чем программа известнее, тем больше людей занимаются их взломом.
    Большой недостаток таких программ - на зашифрованный ими файл жутко орут антивирусы.
    Сам писал программу для этих целей, в результате на зашифрованные ей exe'шник (одна строка на AutoIt) на VirusTotal треть антивирусов среагировала.  
     
     
     

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 17:54 27-06-2015
    dinis124

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NIKZZZZ
     
    Скинул в личные сообщения вам вырванный Au3 с вашего файла.
    Видимо ответ будет никак нельзя защитить скомпилированный скрипт.

    Всего записей: 143 | Зарегистр. 12-09-2011 | Отправлено: 16:49 28-06-2015
    NIKZZZZ



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dinis124

    Цитата:
    Видимо ответ будет никак нельзя защитить скомпилированный скрипт.  

    Идеальной защиты не существует, но обеспечить обычную, когда вскрыть куда сложнее, чем написать свое, вполне осуществимо.

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 18:26 28-06-2015
    SvERxV



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как через AUtoIT Читать текст с браузера? К примеру так:
     
    $text = WinGetText("General Help and Support - Google Chrome")
    MsgBox(0, "Chrome", $text)
     
    Вместо текста браузера - копируется только: Chrome Legacy Window =(

    Всего записей: 15 | Зарегистр. 16-12-2013 | Отправлено: 21:12 29-06-2015
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SvERxV
    Цитата:
    Как через AUtoIT Читать текст с браузера?

    Можно читать с помощью этой библиотеки: UIAutomate - автоматизация нестандартных элементов GUI

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 12:02 30-06-2015
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста, что-то затупил: пример к функции _IECreateEmbedded, как добавить вызов _IEAction($oIE, "refresh"), если окно получает фокус?
     
    P.S. Вызов функции  _IEErrorHandlerRegister() закомментировал, иначе тормоза и не срабатывает действие на $GUI_EVENT_CLOSE.
     
    Добавлено:
    Сделал так

    Всего записей: 6597 | Зарегистр. 28-01-2008 | Отправлено: 09:47 05-07-2015 | Исправлено: Skif_off, 11:52 06-07-2015
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста: есть скрипт, не срабатывает ControlSend('', '', $hWnd, '{F5}') в начале скрипта. Почему? Если предварительно ткнуть в окно, то работает.
    Пробовал ControlSend('', '', $hWnd, '{Enter}') предварительно - нифига, _IEAction($oIE, "focus") после показа окна - тоже.
     
    Добавлено:
    С Send() (после активации окна) заработало, добавил F5 в массив для GUISetAccelerators() - заработала ControlSend().

    Всего записей: 6597 | Зарегистр. 28-01-2008 | Отправлено: 14:36 07-07-2015 | Исправлено: Skif_off, 16:30 07-07-2015
    ST4NN



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вышло обновление до 3.3.14.0
    Подробнее...

    Всего записей: 658 | Зарегистр. 29-12-2005 | Отправлено: 13:22 10-07-2015
    Artem_Butenko



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ребята, пожалуйста, помогите перенести данный пакетный файл в формат AutoIt.
    Цитируя автора скрипта (Mechanicus aka Сергей):

    Цитата:
       Логика работы кода следующая:
    - определяется количество свободного пространства на флешке;
    - если свободного пространства больше 1Gb - создаем файлы размером 1Gb до тех пор, пока это условие выполняется;
    - когда свободного пространства меньше 1 гигабайта - последовательно пытаемся создать файлы размером 512Mb, 256Mb, 128Mb, 64Mb и последний файл размером от 1 до 63 Mb.
       В итоге на флешке создается примерно следующая структура файлов, заполняющая все свободное место (7-значный уникальный код в конце названия каждого файла необходим для избежания ошибки создания файлов с одинаковыми именами):
       [ 1-63 Mb ] 7344296
       [ 64 Mb ] 7343581
       [ 256 Mb ] 6050959
       [ 512 Mb ] 6043075
       [ 1024 Mb ] 2341570
       [ 1024 Mb ] 2353157

     
    Пакетный файл отрабатывает замечательно, но вот, как реализовать подобные действия в AutoIt, к сожалению не знаю. Единственное, хотелось бы иначе представить формат генерируемых файлов:
    Block_Год_Месяц_День_Час_Минута_Секунда_Миллисекунда, т.е.
    'Block' & @YEAR & @MON & @MDAY & @HOUR & @MIN & @SEC & @MSEC.

    Всего записей: 725 | Зарегистр. 19-02-2008 | Отправлено: 23:55 13-07-2015 | Исправлено: Artem_Butenko, 23:58 13-07-2015
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Artem_Butenko,
    Вам можно использовать для этого следующие функции:
    DriveSpaceFree()
    _WinAPI_PathYetAnotherMakeUniqueName()
    _WinAPI_CreateFile()
    _WinAPI_SetFilePointerEx()
    _WinAPI_SetEndOfFile()
    _WinAPI_CloseHandle()

     
    Примерно так (без проверок на ошибки): Подробнее...

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 07:03 14-07-2015 | Исправлено: madmasles, 19:41 14-07-2015
    Logvinoff



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте!
    Скажите пожалуйста, как сделать, чтоб после запуска скрипта на несколько секунд выскакивало сообщение с некоторым текстом, затем закрывалось, и делее отрабатывалась основная часть скрипта?

    Всего записей: 457 | Зарегистр. 04-06-2010 | Отправлено: 16:35 14-07-2015
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Logvinoff
    MsgBox? Есть необязательный параметр timeout, в секундах.

    Всего записей: 6597 | Зарегистр. 28-01-2008 | Отправлено: 17:24 14-07-2015
    Logvinoff



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off
    благодарю Вас! это то, что было нужно! а можно добавить к этому, чтоб был еще таймер обратного отсчета секунд? чтоб совсем было красиво..

    Всего записей: 457 | Зарегистр. 04-06-2010 | Отправлено: 20:17 14-07-2015
    NIKZZZZ



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Logvinoff

    Цитата:
    чтоб был еще таймер обратного отсчета секунд?

    Можно использовать ProgressOn , там есть пример.

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 20:53 14-07-2015
    jFobos



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста, как быть.
    Пишу небольшой скрипт, который вводит команды в окно Putty.
    Как можно скопировать часть текста с этого окна в переменную?

    Всего записей: 452 | Зарегистр. 03-12-2007 | Отправлено: 11:15 16-07-2015 | Исправлено: jFobos, 11:16 16-07-2015
    nibble74

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Всем привет !  Ребята помогите в написании скрипта такого типа
     

    Код:
    Example()
    Func Example()
    WinWait("WoT Client")
    Send("^!{h}")
    SoundPlay(@WindowsDir & "\media\Windows Exclamation.wav")
    WinWaitClose("WoT Client")
    Send("^!{h}")
    SoundPlay(@WindowsDir & "\media\Windows Notify.wav")
    Return Example()

     
    Вообщем суть такова, запустил одну игру, сработало Ctrl+Alt+h, закрыл игру и снова сработало Ctrl+Alt+h.
    Запустил другую игру, сработали горячие клавиши и так по кругу, не знаю как зациклить в скрипте проверку запущенного окна той или иной игры.
     
    Не хотелось бы писать этот код для каждой конкретной игры, так как в автозагрузке придётся держать много запущенных процессов AutoIt-а
     
    Как уместить всё в одном файле ???
     
    Спасибо за внимание.

    Всего записей: 17 | Зарегистр. 30-12-2013 | Отправлено: 13:32 17-07-2015
    SLasH

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Приветствую всех!
    Есть программа Desktop Icons Restorator, но она не восстанавливает значки рабочего стола в Win7 (проверял на x64).
    Есть желающие переделать её под Win7? Или только у меня возникает потребность восстанавливать положение значков при смене разрешения экрана...
    А может есть скрипт по-меньше... только для восстановления позиций значков, без наворотов?

    Всего записей: 723 | Зарегистр. 08-10-2002 | Отправлено: 10:11 07-08-2015
    jFobos



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Сам отвечу на свой вопрос, может кому еще пригодится.
    Придумал вариант получения текста через буфер.
     
    Подключаем нужные библиотеки
    #include <GuiMenu.au3>
    #include <SendMessage.au3>
     
     

    Код:
    $clipTemp = ClipGet() ; помещаем текущее содержимое буфера во временную переменную
    $hMenu = _GUICtrlMenu_GetSystemMenu($hWnd) ; находим указатель на системное меню
    $iIndex = _GUICtrlMenu_FindItem ($hMenu, 'Copy All to clipboard') ; находим в меню нужный пункт
    $iID = _GUICtrlMenu_GetItemID($hMenu, $iIndex) ; получаем идентификатор найденного пункта
    _SendMessage($hWnd, 274, $iID) ; нажимаем пункт меню
    Sleep(100) ; ждем пока система среагирует
    $screenText = ClipGet() ; получаем нужный нам текст
    ClipPut($clipTemp) ; восстанавливаем прежний буфер

    Всего записей: 452 | Зарегистр. 03-12-2007 | Отправлено: 11:11 07-08-2015 | Исправлено: jFobos, 11:12 07-08-2015
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 3)
    gyra (23-01-2020 10:51): AutoIT (Часть 4)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru