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

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



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прочёл недавно в другой теме, что можно написать скрипт, который бы позволял выставить скобки, кавычки и прочих парных животных вокруг выделенного текста. Например:
1. Выделяем в тексте одно или несколько слов, допустим, "мама мыла раму
2. Жмём волшебную кнопку
3. Имеем тот же текст, но с кавычками или скобками и т.п. перед ним и после него.
 
Подскажите, пожалуйста, как такое сделать. Заранее спасибо!

Всего записей: 6524 | Зарегистр. 18-09-2004 | Отправлено: 20:01 18-05-2014
vadim3sh



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

Код:
+^7::
  SendInput, ^{vk43}
  SendInput, 2
  SendInput, ^{vk56}
  SendInput, 2
  return
 

 

Всего записей: 457 | Зарегистр. 28-01-2006 | Отправлено: 22:50 18-05-2014
alexeyAS

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
Подскажите почему такой скрипт не работает в игре(в ворде, скайпе работает)
<i>
#NoEnv
#Persistent
#SingleInstance force
#HotkeyInterval 0
#InstallKeybdHook
#InstallMouseHook
#UseHook On
#MaxThreads 1
#MaxThreadsPerHotkey 1
SetBatchLines, -1
SetKeyDelay, 30, -1
SetTitleMatchMode, 2  
DetectHiddenWindows, On
 
TAB::
 
  Loop
  {
    Send {TAB}
    Send 1
    Sleep 3000
    Send 3
    Sleep 3000
    Send 6
    Sleep 3000
    Send 3
    Sleep 3000
    Send 3
    Sleep 10000
 
    Send 4
  }
return
 
  Loop
  {
    Send {TAB}
    Send 1
    Sleep 3000
    Send 3
    Sleep 3000
    Send 4
    Sleep 3000
    Send 3
    Sleep 3000
    Send 3
    Sleep 10000
 
    Send 4
  }
return
</i>

Всего записей: 2 | Зарегистр. 21-05-2014 | Отправлено: 22:40 21-05-2014
alexeyAS

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
самое интересное, что такой же скрипт под ХП работает, у меня стоит Windows8 ребят подскажите в чем подвох?

Всего записей: 2 | Зарегистр. 21-05-2014 | Отправлено: 13:38 23-05-2014 | Исправлено: alexeyAS, 14:38 23-05-2014
Krot66



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

Всего записей: 1254 | Зарегистр. 10-12-2007 | Отправлено: 20:54 23-05-2014
Koresov

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как сделать, чтобы при открытии окна (браузера) с определенным заголовком, заголовок тут же заменялся на другой?

Всего записей: 3 | Зарегистр. 18-01-2013 | Отправлено: 01:06 28-05-2014
HeT BonpocoB



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Koresov, мне думается лучше это замутить через расширения к самому браузеру...
ну или к локальному прокси/резчику рекламы типа handycache - admuncher

Всего записей: 1342 | Зарегистр. 30-03-2003 | Отправлено: 14:15 29-05-2014
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В AHK есть переменные, выдающие текущее разрешение рабочего стола.
В Wіndows можно ещё настроить "размер шрифта (и других элементов)" - маленький, средний, большой.
В Win8 эта настройка находится:
Control Panel\All Control Panel Items\Display
Подскажите, пожалуйста, - как через AHK-скрипт узнать состояние этого параметра?

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 22:15 29-05-2014 | Исправлено: LonerDergunov, 22:20 29-05-2014
Skif_off

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

Всего записей: 6595 | Зарегистр. 28-01-2008 | Отправлено: 22:30 29-05-2014
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Skif_off
Спасибо, логично ))
Данные можно считать из реестра.
 
А теперь вопрос посложнее. Имеется ссылка на файл (http, ftp). Каким образом можно узнать оригинальную дату модификации файла на сервере? (желательно не скачивая его). Интернет-качалки (Download Master) позволяют это как-то сделать, значит возможность есть.

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 15:03 30-05-2014
Skif_off

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LonerDergunov
Первая мысль - wget. Есть и вторая Вчера размышлял как обновлять автоматом MPC-BE...

Всего записей: 6595 | Зарегистр. 28-01-2008 | Отправлено: 15:27 30-05-2014
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Skif_off
Спасибо. А ведь я искал, помню в том году кучу вариаций находил и пробовал, пытался переделывать... и ничего так и не нашлось толкового.
Сейчас сходу нашлось решение для http (для ftp скрипт не подойдёт, но мне главное - http).
Теперь осталось только перевести запись "Fri, 25 Sep 2009 19:00:23 GMT" в формат YYYYMMDDHH24MISS, но это уже проще.

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 16:40 30-05-2014 | Исправлено: LonerDergunov, 18:04 30-05-2014
nickicool

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
здравствуйте!
У меня проблема с руками, в прямом смысле в общем)) поэтому мне очень сложно нажимать некоторые комбинации клавиш, особенно в играх, когда мешкать нет времени. Узнал об AHK, решил попробовать сделать бинд комбинаций клавиш на одну, но вот что то не получается - игра не воспринимает нажатие клавиши. Подскажите как правильно.
 
Задача моя - сделать бинд одновременного краткого нажатия клавиш А+Пробел (остальное сам сделаю по вашему примеру). Назначим это например на 1 (единицу). Так вот, если я просто пишу:
 
1::А  
 
т.е. просто пытаясь переназначить клавишу, то игра реагирует на 1 так, как будто я нажимаю А, все вроде хорошо. Но если я пишу:
 
1::Send, {A}
 
то в этом случае уже ничего не происходит... почему я не знаю, а во всех гайдах используют именно такой синтаксис. Соответственно я не могу прописать и отправку нескольких клавиш (комбинацию), т.к. на выражение:
 
1::Send,{A}{Space}
 
игра не реагирует, а на такие:
 
1::{A}{Space}
1::A Space
1::A+{Space}
 
ругается сам AHK, ну это я уже сам пытался хоть что то придумать опираясь на самый первый пример приведенный мною.
 
Пробовал вместо Send писать SendInput и SendPlay - просто встречал в сети такие примеры... результат один - никакого.
 
Винда семерка, а игрушка первая Dark Souls.
 
 
 
Можно ли что ни будь тут сделать?

Всего записей: 3 | Зарегистр. 31-05-2006 | Отправлено: 13:59 01-06-2014
Krot66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ругается правильно - такое недопустимо.
Попробуй 1::Send A  
и 1::Send % "A "

Всего записей: 1254 | Зарегистр. 10-12-2007 | Отправлено: 22:31 01-06-2014
nickicool

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
9::A
1::Send A  
2::Send % "A "
 
... нет, работает только 9. Похоже у меня вообще не работает Send. Что делать? Запускаю игру НЕ от админа. Если от админа то и первая строка не работает.

Всего записей: 3 | Зарегистр. 31-05-2006 | Отправлено: 23:23 01-06-2014
Krot66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Еще вариант использовать виртуальные коды клавиатуры, определенные  с помощью скрипта
Тогда будет  
1::Send {vk41}
2::Send {vk41}{Space}
Вообще проверяй в обычном текстовом редакторе - тогда сразу будет видно - то, не то
Еще часто помогает записть в начале скрипта  
SetKeyDelay 50, 50
Может понадобиться запись
2::Send {vk41}
Send {Space}
return
 
Метод Send наиболее совместимый, но часто работает только быстрый SendInput

Всего записей: 1254 | Зарегистр. 10-12-2007 | Отправлено: 11:26 02-06-2014
nickicool

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

Всего записей: 3 | Зарегистр. 31-05-2006 | Отправлено: 15:31 02-06-2014
yogar



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nickicool
У меня рaботaет 1::Send,{A}{Space}, встaвляя 'A '
Может, дело в версии прогрaммы? У меня AutoHotkey 1.1.15.00 (ссылкa в шaпке)

Всего записей: 55 | Зарегистр. 27-08-2003 | Отправлено: 21:46 02-06-2014
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеется окно с кнопками, чекбоксами...
Нужно нажимать кнопки в определённом порядке
ControlClick, Button1, ahk_class Win
ControlClick, Button2, ahk_class Win
ControlClick, Button3, ahk_class Win
Каким образом можно добиться гарантированного срабатывания нажатий (гарантированного срабатывания команды и только после этого перехода к следующей команде)?
У меня получается через раз - иногда отработают все кнопки, иногда какое-либо из нажатий пропустится. Пробую вставлять паузы Sleep - помогает, но не очень сильно. Пробую вначале передавать фокус ControlFocus - тоже не спасает ситуацию.
Вот такой вариант уже работает лучше, но его оптимальность мягко говоря сомнительна.
ControlFocus, Button1, ahk_class Win
ControlSend, Button1, {Space}, ahk_class Win

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 02:59 05-06-2014 | Исправлено: LonerDergunov, 04:10 05-06-2014
Krot66



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

Всего записей: 1254 | Зарегистр. 10-12-2007 | Отправлено: 17:18 05-06-2014
Открыть новую тему     Написать ответ в эту тему

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