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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Открыть новую тему     Написать ответ в эту тему

gyra

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие обсуждения: Часть 1 | Часть 2 | Часть 3

AutoIt 3


AutoIt — это бесплатный язык сценариев, подобный BASIC, предназначенный для автоматизации графического интерфейса Windows и написания скриптов в целом. Он использует комбинацию имитации нажатий клавиш, движений мыши и манипуляций с окнами/элементами управления для автоматизации задач способом, который невозможен или ненадёжен с другими языками (например, VBScript и SendKeys). AutoIt также очень компактен, самодостаточен и работает во всех версиях Windows «из коробки» без необходимости установки раздражающих «сред выполнения»!
 
AutoIt изначально был разработан для «развёртывания» ПК, чтобы надёжно автоматизировать и настроить тысячи компьютеров. Со временем он превратился в мощный язык, поддерживающий сложные выражения, пользовательские функции, циклы и всё остальное, чего могут ожидать опытные программисты.
 
Простой в освоении синтаксис, подобный BASIC
• Имитировать нажатия клавиш и движения мыши
• Управление окнами, элементами управления и процессами
• Скрипты могут быть скомпилированы в отдельные исполняемые файлы.
• Создание графических пользовательских интерфейсов (GUI)
• Поддержка COM
• Регулярные выражения
• Прямой вызов внешних DLL и функций Windows API
• Скриптовые функции RunAs
• Совместимо с Windows XP и Windows 11
• Поддержка Unicode и x64
 
AutoIt разработан таким образом, чтобы быть максимально компактным и автономным, не требуя внешних DLL-файлов или записей в реестре, что делает его безопасным для использования на серверах. Скрипты можно скомпилировать в автономные исполняемые файлы с помощью Aut2Exe.



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

  • Всего записей: 7932 | Зарегистр. 18-02-2006 | Отправлено: 10:49 23-01-2020 | Исправлено: shrmn, 14:07 04-12-2025
    DWZ

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

    Цитата:
    Это опечатка $WorfFile

     
    А я и не заметил. Старый стал . И ведь специально копипастил, чтобы не опечататься, но скопипастил не оттуда
     

    Цитата:
    Я бы мог вытащить ключ из реестра, но боюсь ошибиться при разборе значения, запутаться в кавычках. Вы уж сами в скрипт добавьте.

     
    Да я уже добавил . Это для тех, кто ещё заинтересуется, чтобы ОНИ не забыли.
     

    Цитата:
    ; из файла APISysConstants.au3 $KLF_ACTIVATE  

     
    Вот оно что, а я его не подключил, а AutoIt не ругается на не инициализированные переменные.
    Итак, в итоге скрипт приобретает вид (не забудтье прописать свой серийник)

    Код:
    Opt("WinTitleMatchMode", 2)
     
    #include <Array.au3>
    #include <WinAPISys.au3>
     
    Local $WordFile = ""
    ; Можно использовать $WordFile = $CmdLine[1], если точно уверены, что параметр есть, единственный и в кавычках
    ; для способа ниже: если в названии подряд несколько пробелов, останется один!
    If $CmdLine[0] > 0 Then
        $WordFile = $CmdLine[1]
    Else
        $WordFile = FileOpenDialog("Выберите файл", @MyDocumentsDir, "Files (*.doc;*.docx)|All (*.*)")
        If @error Then _Exit("Файл не выбран!")
    EndIf
    ; Наверное, здесь должен быть ещё серийный номер?
    Local $sStarter = "Microsoft Word Starter 2010 серийник"
    ; Заголовок окна, часть (см. выше "WinTitleMatchMode")
    Local $hWnd = "Документ1 - Microsoft Word Starter"
    Local $bWindow = False
    Run("C:\Program Files (x86)\Common Files\microsoft shared\Virtualization Handler\CVH.EXE" & " " & '"' & $sStarter & '"')
    $hWnd = WinWait($hWnd, "", 100)
    If $hWnd = 0 Then _Exit("Не удалось запустить Microsoft Word Starter!")
     
    WinActivate($hWnd)
    Send("^щ")
     
    $hOpenDlg = WinWait("Открытие документа", "", 100)
    WinActivate($hOpenDlg)
    Send($WordFile & "{ENTER}")
    Exit
     
    Func _Exit($sMessage)
        MsgBox(16, "Error", $sMessage, 3)
        Exit
    EndFunc ;==>_Exit  

     
    Единственная проблема - на ноутбуке, где стоИт Office Starter регулярное и периодически всплывают окна всяких других программ и по закону подлости попадают между WinActivate($hWnd) и Send("^щ") или во время Send($WordFile & "{ENTER}") и скрипт не работает как надо . Я пытался привязать Send к дескрпитору конкретного окна, чтобы вывод всегда шёл туда, но Send так не умеет . Можно ли как-то обойти это дело?
     

    Всего записей: 33 | Зарегистр. 09-10-2019 | Отправлено: 02:26 11-11-2025
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ControlSend / ControlSetText? Есть ещё WinSetOnTop.
     
    P.S. Слать клавиши контролам всегда было не по душе, конкретнее не подскажу.

    Всего записей: 6795 | Зарегистр. 28-01-2008 | Отправлено: 02:39 11-11-2025
    penguen



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Мужики скиньте кто-то exe2aut, а то написал года 2 назад ПО, исходник потерял. Надо подправить кое что, лень заново все переписывать

    Всего записей: 489 | Зарегистр. 04-03-2005 | Отправлено: 13:07 04-12-2025
    820815



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    https://cloud.mail.ru/public/AKz4/GVtbTU1e3

    Всего записей: 650 | Зарегистр. 18-12-2006 | Отправлено: 13:54 04-12-2025
    penguen



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Спасибо за ПО, но я скрипт компил. с поддержкой х64 системы

    Всего записей: 489 | Зарегистр. 04-03-2005 | Отправлено: 15:55 04-12-2025
    820815



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    https://github.com/digitalsleuth/autoit-extractor/releases/tag/v1.0.0

    Всего записей: 650 | Зарегистр. 18-12-2006 | Отправлено: 23:41 04-12-2025
    penguen



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

    Цитата:
    https://github.com/digitalsleuth/autoit-extractor/releases/tag/v1.0.0

    Спасибо, скачал, распаковал \подправил. Все работает.

    Всего записей: 489 | Зарегистр. 04-03-2005 | Отправлено: 16:03 22-01-2026
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 4)


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

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

    LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

    Рейтинг.ru