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

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

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

chum2000

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

   
 
Актуальная версия: AutoHotkey 1.1.30.03 от 4 апреля 2019
 
Официальный сайт | Англоязычный форум | Архивный форум | Русскоязычный форум
Документация (англ.) | Документация и статьи (рус.) | История изменений
 
Подборка полезных скриптов | AutoHotkey + Total Commander
 

Цитата:
AutoHotkey — бесплатная open-source программа для создания макросов и автоматизации, позволяющая упростить повторяющиеся задачи.
 
AutoHotkey позволяет изменить интерфейс практически любой программы. Имеет собственный скриптовый язык, нацеленный специально на лёгкое назначение и переназначение горячих клавиш.
 
AutoHotkey можно использовать для запуска программ, отправки текста, симуляции мыши. Скриптовый язык позволяет управлять окнами, файлами и папками. Команды могут быть активированы горячими клавишами.
 
Также имеются возможности создания GUI, работы с реестром, использования собственного API окон для вызова DLL файлов. Скрипты можно скомпилировать в exe файл и запускать на любом компьютере с ОС Windows соответствующей версии.
 
Наиболее частое применение AutoHotkey:
- переназначение клавиш, глобально или у отдельных программ.
- управление мышкой с помощью клавиатуры или джойстика.
- слежение за системой, автоматическое выполнение некоторых действий по желанию пользователя, таких как напоминание, сканирование или резервное копирование.
 
САМОЕ ГЛАВНОЕ - программа бесплатна и с исходниками.

Всего записей: 503 | Зарегистр. 04-03-2004 | Отправлено: 00:28 02-06-2005 | Исправлено: creature_ws, 23:03 06-04-2019
OnMyDSeeAtAll



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Попробуйте заменить на код виртуальной клавиши (Send, % "{vk5A}{RButton}").

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 01:25 01-01-2015 | Исправлено: OnMyDSeeAtAll, 03:24 01-01-2015
Nek1t



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

Всего записей: 1268 | Зарегистр. 25-10-2006 | Отправлено: 01:09 20-01-2015 | Исправлено: Nek1t, 01:17 20-01-2015
Nek1t



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть такой скрипт. Суть: когда пользователь отпускает клавишу A, надо нажать клавишу D (и наоборот). Скрипт используется в игре, по каким-то причинам игра не регистрирует искусственное нажатие, если не используется задержка - sleep около 100мс.  
Проблема в том, что если сразу же после отжатия A нажать D, то нажатие D "не проходит" в игру - происходит залипание, кажется, как раз на те самые 100мс. Видимо, кнопка так и остается в положении up вне зависимости от ее физического состояния, пока не закончит работу sleep. Это ограничение как-то можно обойти?
 

Код:
~*a up::
 
SendInput {d down}
Sleep 100
SendInput {d up}
return
 
~*d up::
 
SendInput {a down}
Sleep 100
SendInput {a up}
return

Всего записей: 1268 | Зарегистр. 25-10-2006 | Отправлено: 16:47 20-01-2015 | Исправлено: Nek1t, 16:52 20-01-2015
OnMyDSeeAtAll



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

Всего записей: 100 | Зарегистр. 08-07-2011 | Отправлено: 23:55 20-01-2015 | Исправлено: OnMyDSeeAtAll, 05:41 17-02-2015
Nek1t



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OnMyDSeeAtAll
Спасибо, сейчас протестирую. Тот же неприятный баг со sleep. Если сразу после отжатия A нажать D, то персонаж застревает на месте на долю секунды, т.к. нажатие D "не проходит" в игру - D уже нажата, а SendInput {d up} произойдет только после того, как истечет sleep.

Всего записей: 1268 | Зарегистр. 25-10-2006 | Отправлено: 00:47 21-01-2015 | Исправлено: Nek1t, 14:24 21-01-2015
akkustik77

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет.
В игре The Elder Scrolls V: Skyrim, есть кнопка - Q. Если её нажать, герой всегда будет бежать.
Пожалуйста, напишите подобны скрипт. (нужно для других игр)
Но ещё нужно что б кнопка W отлипала при нажатии на клавиши - Q,W,A,S,D
P.S
Вот пример скрипта:
vk51:: SendInput % "{vk57 " ((T := !T) ? "Down" : "Up") "}"
Но тут при нажатии клавишь - A,S,D, кнопка W не отлипает.
Помогите пож

Всего записей: 30 | Зарегистр. 05-04-2007 | Отправлено: 12:39 28-02-2015 | Исправлено: akkustik77, 13:26 28-02-2015
Mihail_Dmitrievich

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

Всего записей: 134 | Зарегистр. 10-05-2014 | Отправлено: 07:05 02-03-2015
monsoon



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно после вставки текста из буфера обмена выделить этот текст слева направо.
Можно сделать так:

Код:
Send, % "{LEFT " StrLen(Clipboard) "}+{RIGHT " StrLen(Clipboard) "}"
 
Но если текст длинный, визуально выглядит некрасиво.
Вроде можно через отправку Message EM_SETSEL, но что-то не получается.
 
Добавлено:
Не получалось из-за того, что вызов был из меню, а команда отправляла сообщение в текущее окно, т.е. в само меню.

Всего записей: 1233 | Зарегистр. 30-01-2003 | Отправлено: 12:17 12-03-2015 | Исправлено: monsoon, 08:51 13-03-2015
ViCin

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извините, дурацкий наверно вопрос, но голову уже всю сломал. AHK давно забыл, что знал. Уже час пытаюсь понять, чем когда-то записывал макрос (перехват нажатий клавиш и мыши). Вижу только один Windows Spy... И даже гугл не помогает...

Всего записей: 178 | Зарегистр. 06-04-2012 | Отправлено: 10:23 26-03-2015
Krot66



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

Всего записей: 583 | Зарегистр. 10-12-2007 | Отправлено: 10:27 27-03-2015 | Исправлено: Krot66, 10:28 27-03-2015
Any_utka



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую всех!
Где-то встречала в этом топике (а может и в другом месте на просторах интернетов) вариант, при котором стандартная функция Ctrl+C (вставка данных из буфера обмена в текущее окно) используется двойное нажатие клавиши [Insert]. Причем интервал между нажатиями можно тоже было задать в скрипте. А сейчас вот понадобилось - и не могу найти. Пробовала сама написать, но не хватает знаний Никому такое не попадалось?
 
И то же самое для двойного нажатия клавиши [Puase/Break]. Или одинарного?
 
Заранее всем спасибо!

Всего записей: 82 | Зарегистр. 01-02-2010 | Отправлено: 12:32 15-04-2015
Krot66



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

Код:
 
~sc52::
~Ins::
if (A_ThisHotkey = A_PriorHotkey && A_TimeSincePriorHotkey < 500)
    Send ^{vk56}
return
 

Работает с серой Ins. 500 - ограничение интервала между нажатиями (мс)
 

Всего записей: 583 | Зарегистр. 10-12-2007 | Отправлено: 15:43 15-04-2015 | Исправлено: Krot66, 15:47 15-04-2015
7Azimuth



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

Что делать?
 
PS Система Win 8.1 Pro.

Всего записей: 165 | Зарегистр. 13-03-2012 | Отправлено: 17:58 15-04-2015 | Исправлено: 7Azimuth, 17:59 15-04-2015
Krot66



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Это старая версия ("Bsasic"). Скачай  отсюда

Всего записей: 583 | Зарегистр. 10-12-2007 | Отправлено: 18:54 15-04-2015
7Azimuth



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

Цитата:
Это старая версия ("Bsasic"). Скачай  отсюда

Там точно такая же версия.

Всего записей: 165 | Зарегистр. 13-03-2012 | Отправлено: 19:31 15-04-2015
Krot66



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, та же. Это ошибка инсталляционного скрипта. Вариантов несколько:
- запустить установщик от администратора из корня диска
- распаковать архиватором и запустить setup.exe
- если совсем глухо, распаковать, поместить в рабочее место и ассоциировать ahk-файлы с требуемой версией Autohotkey (u32 или u64), перед этим переименовав ее в просто Autohotkey.exe

Всего записей: 583 | Зарегистр. 10-12-2007 | Отправлено: 20:11 15-04-2015 | Исправлено: Krot66, 20:12 15-04-2015
7Azimuth



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

Всего записей: 165 | Зарегистр. 13-03-2012 | Отправлено: 21:29 15-04-2015
7Azimuth



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

Всего записей: 165 | Зарегистр. 13-03-2012 | Отправлено: 18:25 16-04-2015
Krot66



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

Всего записей: 583 | Зарегистр. 10-12-2007 | Отправлено: 19:58 16-04-2015 | Исправлено: Krot66, 19:59 16-04-2015
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Возникло три вопроса.
1) В интерфейсе программы имеется переключатель radio button. Мы знаем его ClassNN. Как узнать - включен ли переключатель (стоит ли в кружочке точечка)?
2) Например, где-нибудь в блокноте выделена часть текста. Каким образом можно его передать в переменную?
3) Как скопировать всё содержимое текстового поля? (мы знаем имя контролла ClassNN этого поля)

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 16:20 17-04-2015
Открыть новую тему     Написать ответ в эту тему

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

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

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru