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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

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

chum2000

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

   
 
Актуальная версия: AutoHotkey 2.0.5 от 12 августа 2023
Версия для Windows XP | Changes from v1.1 to v2.0
 
Официальный сайт | Англоязычный форум | Архивный форум | Русскоязычный форум
Документация (англ.) | Документация и статьи (рус.) | История изменений
 
Подборка полезных скриптов | AutoHotkey + Total Commander
 

Цитата:
AutoHotkey — бесплатная программа с открытым исходным кодом для создания макросов и автоматизации, позволяющая упростить выполнение повторяющихся задач.
 
AutoHotkey позволяет изменить интерфейс практически любой программы. Имеет собственный скриптовый язык, специально нацеленный на лёгкое назначение и переназначение горячих клавиш.
 
AutoHotkey можно использовать для запуска программ, отправки текста, имитации мыши. Скриптовый язык позволяет управлять окнами, файлами и папками. Команды могут быть активированы горячими клавишами.
 
Также имеются возможности создания GUI, работы с реестром, использования собственного API окон для вызова DLL-файлов. Скрипты можно скомпилировать в EXE-файл и запускать на любом компьютере с Windows соответствующей версии.
 
Наиболее частое применение AutoHotkey:
- переназначение клавиш (глобально или у отдельных программ)
- управление мышью с помощью клавиатуры или джойстика
- слежение за системой, автоматическое выполнение некоторых действий по желанию пользователя, таких как напоминание, сканирование или резервное копирование
 

Всего записей: 505 | Зарегистр. 04-03-2004 | Отправлено: 00:28 02-06-2005 | Исправлено: Egor2020, 10:08 21-09-2023
HeT BonpocoB



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
WlzI
Цитата:
Есть подозрения что стоит запрет на использование этой программы (что в свою очередь как минимум странно, но всё же)
а чё странного то?
некоторые античиты даже банили (а может и сейчас банят) за сабж в памяти ссылка на гугл
(ну или как минимум выдавали предупреждение и заставляли закрывать)
 
хотя в наше время считаю, что если никакого предупреждения не выскакивает - значит не "запрет", а всё сложнее. к примеру игра может вешать свои "keyboard and mouse hooks" приоритетнее самого autohotkey, или как-то работать напрямую с драйверами мыши-клавы... и т.д. (просто подозрение, но думаю надо копать в эту сторону)

----------
@v0pr0s

Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 13:36 14-01-2018 | Исправлено: HeT BonpocoB, 13:38 14-01-2018
Pavlukha11

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите, пожалуйста! Я хочу назначить дефолтным редактором скрипта другое приложение, не Notepad. У меня Windows 10 Home X64
 
Поиском я находил различные советы, все они сводятся к редактированию ключей реестра.
Ни один способ не сработал, скрипт открывается в Блокноте.  
 
Что конкретно надо изменить?

Всего записей: 17 | Зарегистр. 20-07-2008 | Отправлено: 16:43 10-03-2018
Krot66



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

Код:
 
; http://ahkscript.org/docs/commands/Edit.htm#Editors
 
FileSelectFile Editor, 2,, Select your editor, Programs (*.exe)
if ErrorLevel
    ExitApp
RegWrite REG_SZ, HKCR, AutoHotkeyScript\Shell\Edit\Command,, "%Editor%" "`%1"
 

 

Всего записей: 1180 | Зарегистр. 10-12-2007 | Отправлено: 18:15 10-03-2018
Pavlukha11

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

Цитата:
Скрипт изменения дефолтного редактора:  

Код:
; http://ahkscript.org/docs/commands/Edit.htm#Editors
 
FileSelectFile Editor, 2,, Select your editor, Programs (*.exe)
if ErrorLevel
ExitApp
RegWrite REG_SZ, HKCR, AutoHotkeyScriptShellEditCommand,, "%Editor%" "`%1"  

Видел я способ! И пробовал. Правда руками. В реестре по пути HKEY_CLASSES_ROOTAutoHotkeyScriptShell  я создавал раздел Edit, в нем раздел Command и там прописывал путь к экзешнику своего редактора.  
Безрезультатно. Скрипт продолжает открываться в Блокноте.  
 
 
А с эти скриптом получается вот что. В HKEY_CLASSES_ROOTAutoHotkeyScriptShell создается раздел Edit, но он пустой. Command в нем нет.  
 
Хочу сказать, что мой редактор - Akelpad - в системе не установлен. Я юзаю портабельную версию.  Может ли это быть причиной всех неудач?

Всего записей: 17 | Зарегистр. 20-07-2008 | Отправлено: 22:22 10-03-2018
Krot66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нет! Это официальный способ (смотри ссылку) цепляющий любой редактор к расширению ahk.

Всего записей: 1180 | Зарегистр. 10-12-2007 | Отправлено: 11:12 11-03-2018
Pavlukha11

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

Цитата:
Нет! Это официальный способ (смотри ссылку) цепляющий любой редактор к расширению ahk.

Ну а почему же у меня не цепляет?  
И даже если я вношу изменения в реестр руками - руками делаю то, что должен сделать скрипт - то все равно .ahk не ассоциируется с Akelpad-ом?

Всего записей: 17 | Зарегистр. 20-07-2008 | Отправлено: 21:48 13-03-2018
iglezz

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pavlukha11
Если есть общее понимание файловых ассоциаций в реестре, то должно быть понятно где ошибка закралась.
дефолтная регистрация .ahk
 

Цитата:
Нет! Это официальный способ (смотри ссылку) цепляющий любой редактор к расширению ahk.

Этот способ цепляет редактор к типу "AutoHotkeyScript", а связан ли он с .ahk у конкретного человека на его компе мы не знаем

Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 02:40 14-03-2018 | Исправлено: iglezz, 02:43 14-03-2018
Krot66



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

Цитата:
Этот способ цепляет редактор к типу "AutoHotkeyScript", а связан ли он с .ahk у конкретного человека на его компе мы не знаем

Но мы можем предположить, что Autohotkey  операционной системе установлен

Всего записей: 1180 | Зарегистр. 10-12-2007 | Отправлено: 10:08 14-03-2018
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет! Можно ли средствами AutoHotkey из такого текста

wordA:268333,268302,268263
wordB:0,4,0
wordC:107,15,74

 
wordA:...
wordB:...
wordC:...
...

 
наладить получение такого? —

wordA_268333
wordB_268333_0
wordC_268333_107
wordA_268302
wordB_268302_4
wordC_268302_15
wordA_268263
wordB_268263_0
wordC_268263_74

 
wordA_...
wordB_...
wordC_...
...

 
То есть, совместить все первые цифры, потом вторые, третьи и т.д.?

Всего записей: 1362 | Зарегистр. 05-04-2010 | Отправлено: 17:45 22-03-2018
kykrinik

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

Код:
FileDelete, %A_Desktop%\TXT_out.txt
Loop, read, %A_Desktop%\TXT_in.txt, %A_Desktop%\TXT_out.txt    ;TXT_IN.TXT БЕЗ ПУСТЫХ СТРОК
    {
    num ++
    if num =3
        {
        FileAppend, % con A_LoopReadLine "`n"
        num := con := ""
        }
    Else
    con .= A_LoopReadLine ","
    }
FileDelete, %A_Desktop%\TXT_out_2.txt
Loop, read, %A_Desktop%\TXT_out.txt, %A_Desktop%\TXT_out_2.txt
    {
    RegExMatch(A_LoopReadLine, "(.*?):(\d+),(\d+),(\d+),(.*?):(\d+),(\d+),(\d+),(.*?):(\d+),(\d+),(\d+)" , mh)
    FileAppend, % mh1 "_" mh2 "`n" mh5 "_" mh2 "_" mh6 "`n" mh9 "_" mh2 "_" mh10 "`n"
    . mh1 "_" mh3 "`n" mh5 "_" mh3 "_" mh7 "`n" mh9 "_" mh3 "_" mh11 "`n"
    . mh1 "_" mh4 "`n" mh5 "_" mh4 "_" mh8 "`n" mh9 "_" mh4 "_" mh12 "`n"
    }
ExitApp

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

Всего записей: 227 | Зарегистр. 29-03-2016 | Отправлено: 14:59 24-03-2018 | Исправлено: kykrinik, 14:37 25-03-2018
Krot66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kykrinik
Чтобы не было "рожи" надо выключать смайлики в сообщении. С Autohotkey без этого никак.

Всего записей: 1180 | Зарегистр. 10-12-2007 | Отправлено: 20:06 24-03-2018
gerxer

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

Всего записей: 565 | Зарегистр. 19-06-2014 | Отправлено: 09:01 29-03-2018
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kykrinik
Спасибо, но на реальном примере не срабатывает, так как там числовой ряд, идущий через запятую, может иметь разную длину (около ста):
 
wordA:268333,268302,268263,455455,54455,2211233
wordB:0,4,0,5,8,3
wordC:107,15,74,56,78,34

Всего записей: 1362 | Зарегистр. 05-04-2010 | Отправлено: 11:05 30-03-2018
kykrinik

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D
Конечно не работает, раз условия другие.
Ладно, около сотни чисел в строке, но в латинице ж не 126 букв, а 26 (wordA-wordZ).
 
т.е. наладить получение такого не имеет смысла:
wordA_268333
wordB_268333_0
wordC_268333_107

Всего записей: 227 | Зарегистр. 29-03-2016 | Отправлено: 12:55 30-03-2018 | Исправлено: kykrinik, 12:57 30-03-2018
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kykrinik
Так ведь в примере буквы не выходят за пределы A-B-C, зачем весь алфавит? А если без них не обойтись, может, можно будет использовать aaa, aab, aac, aad и т.д.?
 
Добавлено:
Рабочий пример выглядит примерно так:

Код:
 
"ids":[5011,4997,4963,4947,4884
"likes":[5,1,7,2,9
"comments":[8,51,8,14,4
 
"ids":[3312,3261,3257,3177,3152
"likes":[1,8,8,11,1
"comments":[8,22,22,37,41
 

Это номера постов ВКонтакта, количества лайков к ним и комментов, которые я задумал скачивать последовательно, составляя ссылки в зависимости от чисел. То есть, это нужно, чтобы избежать лишних запросов, чтобы сначала скачивался пост, потом те, кто лайкнули, а потом комментарии.

Всего записей: 1362 | Зарегистр. 05-04-2010 | Отправлено: 13:24 30-03-2018 | Исправлено: D1D1D1D, 13:24 30-03-2018
totnetot



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

Всего записей: 410 | Зарегистр. 16-03-2013 | Отправлено: 14:32 30-03-2018
kykrinik

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D
Вот и ещё три условия добавились.
На выходе слова ids, likes, comments или буквы не имеют смысла.
И утраивать почти одинаковые строки негигиенично.

Код:
FileName := A_Desktop "\TXT_in.txt", file := FileOpen(FileName, "r-d"), Cont := file.Read(), arrA := [], arrB := [], arrC := []
file.Close()
Loop, parse, Cont, `n, `r
    {
    str := A_LoopField
    Loop, parse, str, [`,]
    if A_LoopField !=
        {
        if InStr(str, "ids")
        arrA[A_Index] := A_LoopField, LastA := A_Index
        if InStr(str, "likes")
        arrB[A_Index] := A_LoopField, LastB := A_Index
        if InStr(str, "comments")
        arrC[A_Index] := A_LoopField, LastC := A_Index
        }
    if InStr(str, "comments")
        {
        num ++
        Loop, % LastA
        if A_Index > 1
        Out .= num " - " LastA-1 " =" arrA[A_Index] "_" arrB[A_Index] "_" arrC[A_Index] "`r`n"
        if (LastA != LastB) or (LastA != LastC)    ;ПРОВЕРКА
        Msgbox, 0x1030, , Ошибка в блоке %num%`, строка ~ %A_Index% исходных данных.`n`nКоличество чисел не совпало.
        arrA := [], arrB := [], arrC := [], LastA :=LastB :=LastC := str :=""
        }
    }
FileDelete, %A_Desktop%\TXT_OUT.txt
FileAppend, %Out%, %A_Desktop%\TXT_OUT.txt

Всего записей: 227 | Зарегистр. 29-03-2016 | Отправлено: 18:46 30-03-2018 | Исправлено: kykrinik, 19:07 30-03-2018
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kykrinik
Большое спасибо, уважаемый! Здорово Вы это решили!

Всего записей: 1362 | Зарегистр. 05-04-2010 | Отправлено: 20:52 30-03-2018
creature_ws



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ответ от vk приходит в формате JSON, чем городить свой парсер лучше воспользоваться существующей библиотекой.

Всего записей: 304 | Зарегистр. 29-07-2008 | Отправлено: 18:45 31-03-2018
D1D1D1D

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

     Реальность      |     Ожидание
—————————————————————
link=00                  |     link=00
link=0<312|100> |     link=0
                               |     link=100
                               |     link=200
                               |     link=300
                               |
link=00<637|60> |     link=00
                               |     link=60
                               |     link=120
                               |     link=180
                               |     link=240
                               |     link=300
                               |     link=360
                               |     link=420
                               |     link=480
                               |     link=540
                               |     link=600
                               |
link=00                  |     link=00
link=00                  |     link=00

 
Следующий код задаёт такие цифровые шаги, но не удалось применить его к содержимому из ломаных скобок:
 

Код:
 
#SingleInstance Force
 
lst =
(
link=00
link=0<312|100>
 
link=00<637|60>
 
link=00
link=00
)
 
 nmbr := 900
 step := 60
 lst_lnk_bgn := "nachalo__"
 lst_lnk_end := "__konec`n"
   
 loop % 1 + nmbr // step  
     lst .= lst_lnk_bgn (A_index - 1) * step lst_lnk_end
   
 MsgBox % lst  
 ;FileDelete, %A_Desktop%\lst.txt
 ;FileAppend, %lst%, %A_Desktop%\lst.txt
 ;Run, %A_Desktop%\lst.txt
return
 

 
 
 
Добавлено:
creature_ws
 
А насколько эффективно библиотекой обрабатываются большие порции JSON?

Всего записей: 1362 | Зарегистр. 05-04-2010 | Отправлено: 12:50 10-04-2018 | Исправлено: D1D1D1D, 13:03 10-04-2018
Открыть новую тему     Написать ответ в эту тему

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

Компьютерный форум Ru.Board » Компьютеры » Программы » AutoHotkey


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru