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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    RuS_UA



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    madmasles
    Огромнейшее спасибо!

    Всего записей: 338 | Зарегистр. 04-01-2008 | Отправлено: 09:49 24-07-2011
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RuS_UA,
    Мне интересно, у Вас скрипт работает?

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 10:18 24-07-2011 | Исправлено: madmasles, 10:23 24-07-2011
    RuS_UA



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Нет =(
    1 раз только срабатывает и всё.
    Я уже и надежду потерял, сейчас на работе занят, через пору дней опять крутить начну.
    Но есть другая проблема возможно решаемая, помогите есть программа PriPrinter
    http://forum.ru-board.com/topic.cgi?forum=35&topic=41923&start=320
    Есть к ней серийник, но он не работает в это время НО, если я  
    "E:\Install\Utils\Прочее\NirLauncher Package 1.10.02 RUS\NirSoft\runasdate-x64.exe" /movetime 01\01\2011 00:00:00 "C:\Program Files\priPrinter\priPrinter.exe"  
    Серийник в это время уже работает.
    Вот я думаю :
    1. Переименовать priPrinter.exe в priPrinter2.exe
    2. И скомпилировать скрипт в EXE с коммандой что выше(только priPrinter2.exe прописать), и положить его с именем priPrinter.exe в папку программы, интересно будет ли работать?
    Вот незадача только скомпилированный скрипт не хочет передавать параметры файлу priPrinter2.exe...
    Помогите...

    Всего записей: 338 | Зарегистр. 04-01-2008 | Отправлено: 14:52 25-07-2011
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RuS_UA
    Цитата:
    1 раз только срабатывает и всё.
    Можно поточнее что срабатывает, а что нет, какая у Вас система, какой µTorrent.
     
    PriPrinter не использую.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 15:17 25-07-2011 | Исправлено: madmasles, 15:18 25-07-2011
    vovka21

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    подскажите что не так в этом скрипте
    Подробнее...
     
    работает только выбор танка и кнопка в бой. остальное не хочет. как исправить подскажите кто чем может

    Всего записей: 1 | Зарегистр. 26-07-2011 | Отправлено: 13:21 26-07-2011 | Исправлено: vovka21, 14:03 26-07-2011
    RuS_UA



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    madmasles
    Скрипт не снимает uT с паузы. По таймеру запускается. Моник тушет.
    У меня стоит uT 3.0..
    В чём проблема догнать ума не хватает.
     
    Добавлено:
    Вопрос:
    1. Как сделать чтоб скомпилированный скрипт (например ww.exe)  
    который запускает какое либо приложение (например qq.exe)
    Передал параметры запуска?
    Чтоб я запустил  ww.exe %1
    А Скрипт выполнил qq.exe %1 ?

    Всего записей: 338 | Зарегистр. 04-01-2008 | Отправлено: 17:15 26-07-2011
    AZJIO



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

    Цитата:
    Передал параметры запуска
    If $CmdLine[0]>0 Then
        Run('Explorer.exe '&$CmdLineRaw)
    Else
        Run('Explorer.exe')
    EndIf

    Всего записей: 4409 | Зарегистр. 03-05-2006 | Отправлено: 18:34 26-07-2011 | Исправлено: AZJIO, 18:36 26-07-2011
    NIKZZZZ



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

    Цитата:
    If $CmdLine[0]>0 Then

    не нужна, $CmdLineRaw просто даст пустую строку.
     

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 18:43 26-07-2011
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RuS_UA,
    Я поменял код, у меня на µTorrent 3.0 25460 x32 работает как часы.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 20:43 26-07-2011 | Исправлено: madmasles, 20:45 26-07-2011
    RuS_UA



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    madmasles
    У меня тоже 2 код пашет спасибки =)
    Кстати можно в шапку к UT добавить полезная ведь штука.
    А можно ли скрипт сделать универсальным?  
    Или что менять если версия изменится?

    Всего записей: 338 | Зарегистр. 04-01-2008 | Отправлено: 00:40 27-07-2011 | Исправлено: RuS_UA, 14:42 27-07-2011
    madmasles

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

    Цитата:
    А можно ли скрипт сделать универсальным?  
     Или что менять если версия изменится?

    Можно поменять $s_Title = '[Title:µTorrent 3.0;Class:µTorrent4823DF041B09]' на  $s_Title = '[REGEXPTITLE:.*µTorrent.*;REGEXPCLASS:.*µTorrent.*]', но если поменяется индекс кнопки Старт (8), то работать не будет. Можно найти индекс кнопки через его ToolTip, но тогда надо забивать все возможные языки локализации, а мне лень.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 17:40 28-07-2011
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Обновил утилиту ReplaceTemplateDOCX, добавил прокрутку Gui и прокрутку мышкой, единственное не пойму почему ZIP.au3 функция добавления контента папки работает только если путь короткий, почти в корне диска C. В одном из UDF это функция называется _Zip_AddFolderContents (torels) в другой _Zip_AddPath (wraithdu) и последняя кстати совсем не работает.
    Смысл вто что несколько файлов обрабатываются за 18 сек наверно из за того, что 4 объекта добавляются по очереди полностью перепаковывая архив, а если за раз, то должно в 4 раза быстрее - за 4,5 сек, а это весомо уже.

    Код:
    #include "Zip.au3"
    $Zip = _Zip_Create(@ScriptDir & "\zip_002.zip")
    _Zip_AddFolderContents($Zip, @ScriptDir & "\torels")

    Всего записей: 4409 | Зарегистр. 03-05-2006 | Отправлено: 23:17 28-07-2011 | Исправлено: AZJIO, 23:21 28-07-2011
    LaVas_ki

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    существует ли какой то инструмент для определения самого свежего файла в директории
    или что то, чтоб отсортировать по дате массив файлов
    или хотя б, что б к _FileListToArray добавить еще колонку с датами для сортировки _ArraySort ?

    Всего записей: 1464 | Зарегистр. 03-08-2003 | Отправлено: 12:30 30-07-2011
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    LaVas_ki,
    Попробуйте так
    Код:
    #include <File.au3>
    #include <Array.au3>
     
    $sFolder = @DesktopDir
    $aFile_Temp = _FileListToArray($sFolder, '*', 1)
    If Not @error Then
        Dim $aFile[$aFile_Temp[0] + 1][2] = [[$aFile_Temp[0]]]
        For $i = 1 To $aFile[0][0]
            $aFile[$i][0] = $aFile_Temp[$i]
            $aFile[$i][1] = FileGetTime($sFolder & '\' & $aFile[$i][0], 1, 1) ;создание
        Next
        _ArrayDisplay($aFile, 'Не сортирован')
        _ArraySort($aFile, 0, 1, 0, 1)
        _ArrayDisplay($aFile, 'Cортирован')
    Else
        MsgBox(16, 'Error', @error)
    EndIf

    Или так.
    Код:
    #include <File.au3>
     
    $sFolder = @DesktopDir
    $iTime = 0
    $iTimeLatest = 0
    $iIndex = 0
    $iOptionTime = 1 ;время: 0 - последней модификации, 1 - создания.
    $aFile_Temp = _FileListToArray($sFolder, '*', 1)
    If Not @error Then
        For $i = 1 To $aFile_Temp[0]
            $iTime = FileGetTime($sFolder & '\' & $aFile_Temp[$i], $iOptionTime, 1)
            If $iTimeLatest < $iTime Then
                $iTimeLatest = $iTime
                $iIndex = $i
            EndIf
        Next
        If $iIndex Then
            MsgBox(64, 'The youngest file', 'Folder: ' & $sFolder & @CRLF & 'File: ' & $aFile_Temp[$iIndex] & @CRLF & _
                    'Date: ' & StringRegExpReplace($iTimeLatest, '^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$', _
                    '$3/$2/$1 $4:$5:$6'))
        Else
            MsgBox(16, 'Error', 'Error')
        EndIf
    Else
        MsgBox(16, 'Error', @error)
    EndIf

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 14:06 30-07-2011 | Исправлено: madmasles, 17:17 30-07-2011
    AZJIO



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

    Всего записей: 4409 | Зарегистр. 03-05-2006 | Отправлено: 14:33 30-07-2011
    LaVas_ki

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Dim $aFile[$aFile_Temp[0] + 1][2] = [[$aFile_Temp[0]]]  
     
    никак не пойму эту строчку )
    до равно разобрал, а  чему и что приравнивается? я очень плохо с декларацией массивов (  
    $aFile_Temp[0 это же колво найденых файлов, куда они записываются? в какую ячейку?
     
    Добавлено:
    еще можно ли задать Язык ввода для InputBox по умочланию отличный от дефаулта в системе?

    Всего записей: 1464 | Зарегистр. 03-08-2003 | Отправлено: 14:43 30-07-2011 | Исправлено: LaVas_ki, 14:53 30-07-2011
    madmasles

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

    Код:
    ;...
    Dim $aFile[$aFile_Temp[0] + 1][2] = [[$aFile_Temp[0]]]
    ;то же самое, что
    Dim $aFile[$aFile_Temp[0] + 1][2]
    $aFile[0][0] = $aFile_Temp[0]
    ;так понятнее?

    LaVas_ki

    Цитата:
    еще можно ли задать Язык ввода для InputBox

    Попробуйте так
    Код:
    _WinAPI_LoadKeyboardLayoutEx()
    InputBox('Test', 'Ввод должен быть на англ. языке')
     
    Func _WinAPI_LoadKeyboardLayoutEx($sLayoutID = 0x0409, $hWnd = 0)
        ;CreatoR, http://autoit-script.ru/index.php/topic,5745.0.html
        Local Const $WM_INPUTLANGCHANGEREQUEST = 0x50
        Local $aRet = DllCall("user32.dll", "long", "LoadKeyboardLayoutW", "wstr", Hex($sLayoutID, 8), "int", 0)
     
        If Not @error And $aRet[0] Then
            If $hWnd = 0 Then
                $hWnd = WinGetHandle(AutoItWinGetTitle())
            EndIf
     
            DllCall("user32.dll", "ptr", "SendMessage", "hwnd", $hWnd, "int", $WM_INPUTLANGCHANGEREQUEST, "int", 1, "int", $aRet[0])
            Return 1
        EndIf
     
        Return SetError(1)
    EndFunc   ;==>_WinAPI_LoadKeyboardLayoutEx


    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 15:12 30-07-2011 | Исправлено: madmasles, 15:29 30-07-2011
    LaVas_ki

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

    Цитата:
    ;так понятнее?

    спасибо

    Цитата:
    Ввод должен быть на англ. языке

    у меня как раз наоборот ) заменил $sLayoutID = 0x0419
    код у меня  
     
    HotKeySet("!0", "Save")
    While 1
        Sleep(300)
    WEnd
     
    Func Save()
        _WinAPI_LoadKeyboardLayoutEx()
        InputBox('Test', 'Ввод должен быть на русс. языке')
    EndFunc
     
    не пашет, в варианте сверху работает, а по хоткею нет
    да еще и иногда инпут-окошко вылетает на задний фон вместо переднего

    Всего записей: 1464 | Зарегистр. 03-08-2003 | Отправлено: 19:51 30-07-2011 | Исправлено: LaVas_ki, 19:55 30-07-2011
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    LaVas_ki
    Цитата:
    в варианте сверху работает, а по хоткею нет
    Похоже, что язык задается только в начале и только один раз, иначе не работает (у меня).

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 08:35 31-07-2011
    LaVas_ki

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    так это и есть начало
    собсвенно это весь скрипт - функция на хоткее

    Всего записей: 1464 | Зарегистр. 03-08-2003 | Отправлено: 10:12 31-07-2011 | Исправлено: LaVas_ki, 10:22 31-07-2011
       

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