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

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

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

Widok (12-01-2009 14:47): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

AddXL

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

AutoIt3

 
Домашняя страница: http://www.autoitscript.com
Страница загрузки: http://www.autoitscript.com/autoit3/downloads.php
 
Описание:

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

 
Помощь по AutoIT:
  • Справку на русском (и не только) вы всегда(?) сможете найти тут
  • Справочник по командам rundll32
  • Русский справочник по API-функциям
  • Помощь по Регулярным выражениям
  • AutoIt v3: Your Quick Guide (652 КБ) - Ваш быстрый гид в мир AutoIt-а (книга в формате pdf)
     
    Инструметы для AutoIt:
  • AutoIt3Wrapper [Страница закачки] - Программа для компилляции скрипта с дополнительными возможностями (добавление иконки, описании и т.п).
  • Koda (724 Kb) - Визуализация работы с GUI - аналог Visual Basic.
  • CodeWizard (400 Kb) - нечто простенькое на вариант Koda.
  • AutoItMacroGenerator (34 Kb) - Записывает в реальном времени действия пользователя в AutoIt код.
  • ScriptWriter (78 Kb) - Аналог AutoItMacroGenerator.
  • API Constants (1042 Kb) - Утилита для просмотра всех констант API-Функции и не только.
  • Страница закачки утилит которые идут в отдельной поставке редактора SciTE.
  • AutoIt меню для браузера Opera
     
    Готовые скрипты и программы с открытым кодом на AutoIt:
  • Коллекция AutoIt скриптов от Sanja Alone
  • Коллекция скриптов на http://msfn.org
  • Пополняющийся со временем сайт с полезными утилитами и функциями на AutoIt
  • Desktop Icons Restorator - Скрипт-Программа для сохранения/восстановления позиции иконок р.стола.
  • CaptureIt - Утилита предназначена для захвата изображений с вашего экрана.
  • SwitchIt - Скрипт для конвертирования выделенного текста
  • Скрипт расскраски кода AutoIt для публикации в форумах
     
    Общие вопросы и решения на Autoit:
  • Обработчик скриптов добавляющий отладчик (debugger)
  • Интеракция между несколькими скриптами
  • Пример использование интеракции между скриптами - Добавление элементов GUI с внешнего модуля
  • Копирование большого файла с отображением данных прогресса
  • Создание динамического меню в Tray Icon (значёк в области уведомления)
  • Пример создания своего мастера (Wizard)
  • Метод позволяющий запускать код VBS не создавая временных файлов
  • Описание функции GUIRegisterMsg()
  • Пример перехвата вводимых символов с клавиатуры
  • Пример деактивирования TabItem
  • Пример вывода лога в Edit-поле (с поддержкой форматирования текста)
  • Пример остановки/начало выполнения скрипта + Слежение за б.обмена с заменой неподдерживаемых в имени файла символов
  • Пример использования меню с иконками (ModernMenu.au3) -> Список программ в меню значка в системном трее
     
  • Как по PID процесса вычислить путь запускаемого файла
  • Получение IP по подключенному сокету
     
    Отдельные функции (UDF):
  • Функции Отключения/Подключения к Интернету
  • Функция проверки подключения к Интернету
  • Функция для получения структуры директории включая подкаталоги
  • Функция для поиска в файлах
  • Функция для смены разрешения экрана
  • Функция для смены раскладки клавиатуры в определённом окне
  • Функция для получения списка процессов с допол. инфой (путь к исполняемому файлу и др.)
  • Функции и пример для отображения детального процесса закачки файла
  • Функция (и пример использования) для отображения стильного диалога “О Программе” - [Усовершенствованная версия]
  • Функция возвращает пронумерованный список всех классов определённого окна + функция получения хендлов для этих классов
  • Функция для получения заголовка окна (или его идентификатора) по ID процесса (PID)
  • Функция _StringIsUTF8Format() + _StringToUTF() - Первая проверяет если строка содержится в UTF-8 формате, вторая преобразовывает строку в UTF-8 формат
  • Функция _FileOpenDialogEx - Возвращает массив (или строку) с полными путями к выбранным файлам
  • _AU3_Lib* Функции - Предназначены для обработки подключаемых библиотек через #include
  • Функция транслитерации строки
  • Расширенная библиотека для работы с реестром
     
    За шапкой следит ViSiToR  

  • Всего записей: 6 | Зарегистр. 24-11-2005 | Отправлено: 13:20 24-11-2005 | Исправлено: Maz, 11:50 17-04-2017
    Hackproof



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Господа, кто-нибудь подскажет, как мне скрипт скомпилить в dll, и можно ли эту dll-ку вызвать из проги, написанной на другом языке?

    Всего записей: 106 | Зарегистр. 24-05-2008 | Отправлено: 18:59 26-05-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Hackproof 18:59 26-05-2008
    Цитата:
    как мне скрипт скомпилить в dll

    На AutoIt это не предусмотрено

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 02:19 27-05-2008
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Пишу ГУИ для DOS приложения...
    Как известно DOS не любит пути к файлам, которые содержат пробелы.
    Например мне надо передать как параметр программе путь к файлу:
    C:\Documents and Settings\All Users\Рабочий стол\file.dat
    Как преобразовать эту строку в вид типа:  
    C:\Docum~1\All~1\Рабоч~1\file.dat
    Я правда не знаю точных правил как это пишется сколько символов оставлять и всё такое.. Заодно подскажите и эти правила.
    Заранее благодарен.

    Всего записей: 1622 | Зарегистр. 01-05-2006 | Отправлено: 16:41 28-05-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ynbIpb 16:41 28-05-2008
    Цитата:
    Как преобразовать эту строку в вид типа

    FileGetShortPath()... но некоторе DOS-приложения не “любят” укороченные пути, лучше в кавычках передавать (т.е примерно так: Run('SomeApp.exe "C:\Documents and Settings\All Users\Рабочий стол\file.dat"', 'C:\Documents and Settings\All Users\Рабочий стол'), второй параметр это рабочий каталог).
     

    Цитата:
    как это пишется сколько символов оставлять и всё такое

    Первые 6 (пробелы удаляются) потом тильда (~), и затем порядковый номер (если похожего файла нет рядом, тогда 1). Если имя файл состоит ровно (или меньше) из восьми символов, то оно не укарачивается.

    Код:
    C:\Docume~1\AllUse~1\Рабочи~1\file.dat


    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 02:22 29-05-2008 | Исправлено: ViSiToR, 02:22 29-05-2008
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    спасибо.
    Действительно если заключаю путь в кавычки программа его принимает. так что и укорачивать не надо.
    а зачем вообще указывается рабочий каталог?

    Всего записей: 1622 | Зарегистр. 01-05-2006 | Отправлено: 08:15 29-05-2008 | Исправлено: ynbIpb, 08:17 29-05-2008
    Maza Faka



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

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

    Некоторые программы без этого параметра не запускаются.

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 10:09 29-05-2008
    NIKZZZZ



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

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

    Если программе требуются какие-либо дополнительные файлы, их поиск по умолчанию осуществляется именно там.
     

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 10:54 29-05-2008
    Maza Faka



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    NIKZZZZ
    О! Я не знал этого, спасибо за информацию.

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 14:59 29-05-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Maza Faka 10:09 29-05-2008
    Цитата:
    Некоторые программы без этого параметра не запускаются.

    Запускаются, но могут работать некорректно.
     
    NIKZZZZ 10:54 29-05-2008
    Цитата:
    поиск по умолчанию осуществляется именно там

    Имхо, не совсем так. Это всё зависит от приложения, если пути относительные, то исходить всё будет либо с текущего каталога (родительский каталог приложения), либо с рабочего (если указан).

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 17:55 29-05-2008
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ну в моей ситуации думаю этот параметр можно опустить, так как пути я указываю абсолютные, а программа состоит из 1 файла. вобщем оболочку я сделал всё работает отлично. Спасибо за помощь!

    Всего записей: 1622 | Зарегистр. 01-05-2006 | Отправлено: 18:09 29-05-2008 | Исправлено: ynbIpb, 08:13 30-05-2008
    zero1632

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите решить задачку - есть много pdf файлов, которые нужно проверить на битость/небитость.
    Для этого я нашел на pdf-tools.com программу переконвертации текста (у них есть dll, но я так и не понял, как его подключать). В общем, если текст конвертируется и программа выходит с errorlevel=0 то pdf нормальный, если errorlevel любой другой - битая.
    Все бы хорошо,и запускал я эту прогу через $res_errl=Runwait...для получения errorlevel.
    Только программа эта периодически вылетает в "программа совершила недопустимую операцию" с кнопкой "закрыть". Я бы сделал даже запуск через run, а потом ждал в цикле, пока процесс в памяти не исчезнет (и отслеживанием появления этого дурацкого окошка об ошибке программы), но тогда я не смогу считать errorlevel программы при ее окончании работы.
    Что делать? Как-то можно его считать?

    Всего записей: 16 | Зарегистр. 17-11-2007 | Отправлено: 13:37 30-05-2008
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста есть ли команда, которая проверяет существует ли в данный момент переменная? Например при определённом условии в цикле инициализируется таймер $begin = TimerInit() но он может и не инициализироватся а в этом же цикле нужно всегда проверять его состояние $dif = TimerDiff($begin) но если таймер не создан, то такой переменной не существует и соответственно скрипт выдаст ошибку. Можно конечно создать её заранее с нулевым значением, но может как-то иначе можно решить?

    Всего записей: 1622 | Зарегистр. 01-05-2006 | Отправлено: 15:08 30-05-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ynbIpb 15:08 30-05-2008
    Цитата:
    есть ли команда, которая проверяет существует ли в данный момент переменная?

    IsDeclared().
     

    Цитата:
    Можно конечно создать её заранее с нулевым значением

    Это имхо, будет правильное решение.

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 16:09 30-05-2008
    Astra55



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    zero1632
    http://www.pdf-analyzer.com - бесплатная версия.  
    Сделать скрипт, который анализировал бы результат "OKay!" и другие параметры по необходимости. Вроде бы попадались и другие софты, но подзабыл название.

    ----------
    Per warez ad scientiam

    Всего записей: 11717 | Зарегистр. 16-05-2003 | Отправлено: 18:04 30-05-2008
    Hackproof



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    У меня есть самописная прога на VB с подключенным модулем sysmon.ocx, которая мониторит загрузку процессора, и при превышении определенного уровня кое-что делает. Каждую секунду уровень загрузки процессора читается в переменную таким образом: a = sysmon.Counters.Item(1).Value
    Можно ли сделать скрипт мониторинга загрузки без подключения этого модуля, или если нет - то как мне получить из модуля значение текущей загрузки в переменную?
    =========
    Вопрос более не актуален.

    Всего записей: 106 | Зарегистр. 24-05-2008 | Отправлено: 23:41 31-05-2008 | Исправлено: Hackproof, 22:09 02-06-2008
    Maza Faka



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

    Цитата:
    сделать скрипт мониторинга загрузки


    Цитата:
    Вопрос более не актуален.

    Ну может кому-нибудь пригодится
     

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 08:37 03-06-2008
    gregaz



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вопрос :
    Можно ли установить кнопки на одной линии с пунктами МЕНЮ ?

    Всего записей: 79 | Зарегистр. 02-06-2007 | Отправлено: 17:20 04-06-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    gregaz 17:20 04-06-2008
    Цитата:
    Можно ли установить кнопки на одной линии с пунктами МЕНЮ

    Как стандартную кнопку не думаю, можно пункт меню использовать как кнопку...
     

    Код:
     
    GUICreate("_GUICtrlCreateMenuItemEx", 200, 100)
     
    $hMenu = GUICtrlCreateMenu("File")
    $ExitItem = GUICtrlCreateMenuItem("Exit", $hMenu)
     
    GUICtrlCreateMenuItem("                     ", -1)
     
    $MenuItem = _GUICtrlCreateMenuItemEx("Button", -1)
     
    GUISetState()
     
    While 1
        Switch GUIGetMsg()
            Case -3, $ExitItem
                Exit
            Case
    $MenuItem
                MsgBox(0, "", "Menu Button Pressed")
        EndSwitch
    WEnd
     
    Func
    _GUICtrlCreateMenuItemEx($sText, $iMenuID, $iMenuEntry=-1, $iMenuRadioItem=0)
        Local $iAutoItVersion_Check = StringReplace(@AutoItVersion, ".", "") < 32120
     
        If Not $iAutoItVersion_Check Then
            Local
    $nDummyMenu = GUICtrlCreateMenu("")
            Local $nDummyMenuItem = GUICtrlCreateMenuItem("", $nDummyMenu)
        EndIf
     
        Local
    $nMenuItem = GUICtrlCreateMenuItem($sText, $iMenuID, $iMenuEntry, $iMenuRadioItem)
     
        If $iAutoItVersion_Check Then Return $nMenuItem
     
        GUICtrlDelete($nDummyMenu)
        GUICtrlDelete($nDummyMenuItem)
     
        Return $nMenuItem
    EndFunc

     
    UDF это для обхода бага(?) в последней версии.

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 03:15 05-06-2008
    Hackproof



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

    Всего записей: 106 | Зарегистр. 24-05-2008 | Отправлено: 05:06 05-06-2008
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Hackproof 05:06 05-06-2008
    Цитата:
    как свернуть программу в трей полностью, чтобы не было кнопки на панели задач?

    см. GUISetState(@SW_HIDE, $GUI).

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 09:40 05-06-2008
       

    Страницы: 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

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 1)
    Widok (12-01-2009 14:47): лимит страниц. продолжаем здесь


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

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru