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

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

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

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

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

gyra

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

 
Описание:

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

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


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

  • Всего записей: 7932 | Зарегистр. 18-02-2006 | Отправлено: 10:49 23-01-2020 | Исправлено: Egor2020, 14:02 22-03-2021
    Fom64

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ndch
    https://autoit-script.ru/docs/menu/total.htm

    Всего записей: 262 | Зарегистр. 26-11-2010 | Отправлено: 09:53 12-11-2020
    ndch

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Fom64
    Насколько понял - http://autoit-script.ru/docs/functions/blockinput.htm
    Так а тут я не вижу упоминания необходимости прав "Администратора"  для функционирования Blockinput.
    Что я делаю не так ?
     
    Или предполагается что я догадаюсь об этом увидев #RequireAdmin ?

    Всего записей: 6477 | Зарегистр. 31-08-2008 | Отправлено: 10:11 12-11-2020 | Исправлено: ndch, 10:15 12-11-2020
    ndch

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Кто-нибудь может объяснить почему  
    под xp/2003 x86
    если AutoIt3.exe лежит в c:\test\AutoIt3.exe
    при запуске AutoIt3.exe из "проводника",  
    получается что рабочая директория == "%USERPROFILE%\Мои документы" ?
     
    Но если под xp из проводника запускать test.cmd , содержащий
    Код:
    AutoIt3.exe test.au3
    то "рабочая директория" вполне будет ожидаемой.

    Всего записей: 6477 | Зарегистр. 31-08-2008 | Отправлено: 13:23 13-11-2020 | Исправлено: ndch, 14:15 13-11-2020
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ndch
    При таком запуске для диалога открытия файла какой-то же каталог нужно выбрать по умолчанию, не так ли?
     
    А вообще, зачем вам это? Создайте test.au3 с таким содержимым

    Код:
    MsgBox(4096, 'Рабочий каталог', @WorkingDir)

    и результат будет одинаковый в обоих случаях.

    Всего записей: 6462 | Зарегистр. 28-01-2008 | Отправлено: 11:59 17-11-2020
    ndch

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

    Цитата:
    и результат будет одинаковый в обоих случаях.

     
    В x86 xp / 2003  можно наблюдать вот такой результат:
     
       
     
       
     
    q.cmd :

    Цитата:
    AutoIt3.exe test.au3

     
       
     
       
     
    на скриншотах autoit 3.3.14.5

    Всего записей: 6477 | Зарегистр. 31-08-2008 | Отправлено: 13:27 17-11-2020 | Исправлено: ndch, 13:33 17-11-2020
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ndch
    Интересно Другие версии сабжа или WinXP не проверяли?
    Пользуюсь 3.3.8.1, проверил и 3.3.14.5 - порядок, макрос выдаёт один и тот же путь (батник, ручной выбор и до кучи системные ассоциации и двойной клик). Правда, это всё под WinPE.
    Ни с чем подобным не сталкивался, обычно не пользуюсь @WorkingDir (хотя FileChangeDir() приходилось), обычно - @ScriptDir, переданный параметром путь ($CmdLine) или путь, полученный в процессе работы скрипта. Ну и как-то @AutoItExe. Выходит чётко и ясно...

    Всего записей: 6462 | Зарегистр. 28-01-2008 | Отправлено: 17:14 17-11-2020
    ndch

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Пробовал разные версии AutoIT3 на x86 XP  и  x86 2003.

    Всего записей: 6477 | Зарегистр. 31-08-2008 | Отправлено: 21:12 17-11-2020
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ndch
    Почитай FileChangeDir. Задай принудительно рабочий каталог батника FileChangeDir(@ScriptDir), и если прога предполагает запуск через батник, то прими как должное использовать эту функцию.

    Всего записей: 4407 | Зарегистр. 03-05-2006 | Отправлено: 11:57 20-11-2020
    ndch

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AZJIO
    Всё же, отчего так ?
     
    Добавлено:
    Непонятное поведение происходит под xp x86 при драг-н-дропе (в проводнике) пиктограммы test.au3 на пиктограмму AutoIt3.exe
    Иными словами : запуск драг-н-дропом.
     
    Подобного поведения НЕ наблюдается:
    Если прописать *.au3 в ассоциации windows  и запускать даблкликом или
    Если запускать из командной строки или
    Если ОС - windows xp x64, 7, 10

    Всего записей: 6477 | Зарегистр. 31-08-2008 | Отправлено: 12:38 20-11-2020 | Исправлено: ndch, 13:06 20-11-2020
    AlexLev59

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ребят, для скачивания декомпилятора myAutToExe2_15_src.7z требуется авторизация. Я не догоняю как скачать.

    Всего записей: 113 | Зарегистр. 04-12-2006 | Отправлено: 02:44 25-11-2020
    opk44

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AlexLev59
    Сайт сообщает: «Enter planet-dl.org as username and password»
    Что именно вам непонятно в этом сообщении?

    Всего записей: 173 | Зарегистр. 16-01-2020 | Отправлено: 03:32 25-11-2020
    AlexLev59

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    opk44
    Я зарегистрировался на форуме board.deioncube.in, но его авторизация не подходит для скачивания.

    Всего записей: 113 | Зарегистр. 04-12-2006 | Отправлено: 10:24 25-11-2020
    xrun1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AlexLev59
    Для скачивания регистрация не нужна, вводите в поле логина и пароля planet-dl.org

    Всего записей: 710 | Зарегистр. 26-12-2009 | Отправлено: 15:43 25-11-2020
    Baltazar500



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как быть в случае с данной конструкцией
    Код:
     
    $cmd = ''
    For $i = 1 To $CmdLine[0]
        $cmd &= $CmdLine[$i] & ' '
    Next  
    когда скрипту надо передать параметры командной строки в двойных кавычках, с сохранением этих кавычек ? А то параметры передаются, а кавычки обнуляются и вя дальнейшая логика идёт псу под хвост. Можно использовать $CmdLineRaw вместо for'a но тогда там можно буждет обработать не более 63 входных параметра, а for позволяет обработать все 99, которые позволяет зарядить AutoIT за раз. Если бы неэтот нюанс с кавычками.

    Всего записей: 2080 | Зарегистр. 19-09-2011 | Отправлено: 23:33 10-12-2020
    iglezz

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Baltazar500
    Ограничение заявлено для массива $CmdLine[], в то время как $CmdLineRaw содержит строку запуска в сыром виде и такого ограничения иметь не может (только на максимальную длину строки). Причём ограничение в 63 параметра заявлено в документации, но в последней версии оно не действует (видимо потерялся этот момент в документации после снятия ограничения) - параметров хоть 120 может быть.
    Так что можно смело использовать $CmdLineRaw  

    Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 00:34 11-12-2020
    Baltazar500



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    iglezz, ясно, спасибо. Тогда это всё упрощает в плане кода К слову, как избежать при тестировании не скомпилированного au3-скроипта при использовании $CmdLineRaw включения скрипта с полным путём в командную строку ? После компиляции такого естественно не происходит, но при тестировании мешает :|

    Всего записей: 2080 | Зарегистр. 19-09-2011 | Отправлено: 03:18 11-12-2020
    Zmy777

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Baltazar500, а как вы собираетесь передавать скрипту аргументы?
     
    Из окна CMD? Через батник? Через Total Commander?

    Всего записей: 23 | Зарегистр. 20-08-2018 | Отправлено: 16:45 11-12-2020
    iglezz

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Baltazar500
    В случае некомпилированного скрипта можно просто почистить $CmdLineRaw примерно так:
    Код:
    If Not @Compiled Then $CmdLineRaw = StringStripWS(StringTrimLeft($CmdLineRaw, StringLen(@ScriptFullPath) + (StringLeft($CmdLineRaw, 1) = '"' ? 2 : 0)), 1)
    ;If Not @Compiled Then $CmdLineRaw = StringTrimLeft($CmdLineRaw, StringLen(@ScriptFullPath) + 3) ; этот способ работает только если имя скрипта в кавычках

    Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 17:23 11-12-2020 | Исправлено: iglezz, 22:03 11-12-2020
    xrun1



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

    Всего записей: 710 | Зарегистр. 26-12-2009 | Отправлено: 22:24 11-12-2020 | Исправлено: xrun1, 22:42 11-12-2020
    Baltazar500



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Zmy777, через cmd, я его вот так банально тестирую
     
    iglezz, спасибо, буду пробовать.
     
    upd: Работает. То, что нужно

    Всего записей: 2080 | Зарегистр. 19-09-2011 | Отправлено: 00:21 12-12-2020 | Исправлено: Baltazar500, 01:16 13-12-2020
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14

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


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru