Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - YoClickamann

Pages: [1] 2
1
Предложения / Re: Анализ текста в окне
« on: October 05, 2016, 10:03:34 AM »
Кто-нибудь здесь знаком с Sikuli, OpenCV, ProjectNaphta?

2
Предложения / Re: Кликер для линукса
« on: October 04, 2016, 06:22:32 PM »
К сожалению под Андроидом альтернативы Clickermann нет и было бы здорово иметь возможность использовать эту программу и на этой платформе.
Аналог есть . "Фин реп." Поищите на 4пда.
 Я юзаю пару лет. Но там свои особенности .

Встречал фингерс репит на 4пда, но сам не пробовал. Не подскажете, он там записывает только касания в коде или ещё какие-нибудь команды? И вообще его сохранённые скрипты можно редактировать? А то мне нужно как-то извратиться, чтоб он не только клик записал, а и перемещение курсора, скажем как с помощью мыши, чтоб потом это слово подредактировать. И что там кстати за особенности в фрепе?

А по поводу альтернатив под андроидом есть Таскер с прикручиваемым модулем кликов, да и другие варианты по-скромнее имеются, ищите там же, на фопда.

3
Общие вопросы / Re: Сколько будет стоить...
« on: October 04, 2016, 06:06:52 PM »
Что за игрушка хоть?

4
Здесь уже спрашивали что-то подобно, и автор кажется подтвердил, что алгоритм ищет сначала первый пиксель из искомой  картинки слева направо по верхней строке, потом спускается построчно по скриншоту экрана  вниз. Если находит пиксель, то сверяет второй, затем третий и т. д, причём учитывается колормод и фон. Поэтому тут не раз советовали для быстрого поиска, чтобы картинка была маленькой (в десятки пикселей, а не в мпкс) и по возможности ограничивать зону поиска надо. Наверняка используется GDI+, хотя если б автор хотел бы ускоритть разработку и открыть код программы, то сделал бы это 10 лет назад. Видимо, есть проблема с тем, что потом под именем программы будут запуливать вирусы или же наоборот кто-то возьмёт и присвоит себе плоды труда автора, но уже под другим именем. А что даст сам исходник? Думаю, там ничего кординально сложного, раз он ищет тольков одном режиме - справа налево и сверху внизу, это никак не настраивается в программе или в параметрах функции.

5
Красава i0, я только подумал за джаваскрипт, а ты уже написал. Очевидно же, зачем мегасложные городить костыли, если щас каждый браузер поддерживает скриптование и с кучей разных фреймворков, библиотек и расширений. Есть расширения, в которые можно свой необходимый код JS вставить и вызывать его затем при нужде по хоткею, чтоб не писать каждый раз одно и то же. Там же можно в параметрах функции указать количество пикселей, на которое нужно прокручивать эври тайм ю ит.

6
Кстати, полазил ещё на нировском сайте и нашёл среди множества ихних утилит одну примечательную вещь. То есть по идее эту программку можно прикрутить к кликеру прямо в форме DLL, учитывая также, что Кликермен такой обмен данными тоже поддерживает. А насколько же получится упростить обмен данными и их обработку, когда все нирсофтовы функции можно будет иметь прямо встроенными буквально в Кликермен, за счёт подсоединения динамической библиотеки! Даст бог бы нашёлся только человек, который нам это сделает, подсоединит и разжуёт всё  ;D

7
Ban? Удаляю тему!
Х - )

это бан, однозначно бан. Уж я-то в это что-то понимаю. >:(
Не зря же у тебя статус освоившийся, а я только новичёк.
Кстати, Кирилл, читал некоторые темы (когда был ещё гостём) и там есть твои цитирования, а самих твоих постов нету. Это что, последствия бана или ты сам поудалял свои сообщения?

Не, ну если нужно, я удалю тему или же пойду на другой форум по-адекватнее, нас рать)

Code: [Select]


























































#####
0:225107811
1:576121584
2:576146274
%%%%%

8
Ошибки / Re: Не запускается на Windows 7 x64
« on: September 30, 2016, 10:40:18 PM »
Предыстория: кликером пользуюсь с месяц и по-немногу осваиваю, для него у меня отключён DEP, по идее должно быть всё чики-пуки.

Сегодня же скачал нирсофт и нашёл в нём интересную фишку - возможность запускать программы без интерфейса, как бы скрытно, без окон и засвета в трей-области. Ну так вот: решил протестировать сию возможность на кликере, для чего распаковал архив с кликером в новую папку. И о чудо! копия кликера, которой нет разрешений в списке DEP, не запустилась! То есть я даже не успел потестировать функцию нира с хайд-режимом. А кликера я не нашёл ни в трее, ни в списке процессов. Такой вот сурпрыз.

Добавлю, что всё это под Вин8 случилось. Но в десятке кликер тоже лагает порядком.

9
Ошибки / Re: Запись в версии 4.12
« on: September 30, 2016, 10:30:25 PM »
ремонтируйте свои Окна 8 и 10, запись норм работает (если прямыми руками Окна ставить и отлаживать)
Винда была LTSB практически чистая, на неё поставлен этот кликер. Чего там отлаживать, если оно сразу после распаковки виснет? Дизассемблер что ли запустить?!

10
Ошибки / Re: Кавычки
« on: September 30, 2016, 10:28:02 PM »
Мне привязка собственно не нужна. Больше того, я её не люблю :D. В начале тоже был восторг, эйфория от потенциальных возможностей. На практике это почти никогда не нужно.
В крайнем случае есть виртуалка и VDS. Хоть обзапускайся кликеров.

За годовую цену ВДСа я лучше куплю себе парочку новых компов :) Были б у всех вдсы, так не нужны были негры.
А как же с привязкой? Ведь вы же где-то сами писали, что вроде и сам автор программы пропагандирует привязку. Да и как же сделать нужное действие в фоне? А что, неужели ни в одном другом кликере нету такого режима привязки?

11
Почитал сегодня справку по командам Нира (маленькой консольной утилитки в 100 кб) по советам 0raven и i0, нашёл для себя немного интересных моментов с примерами:
[spoiler=Бенефиты Нира]
speak text ~$clipboard$ - читает текст из буфера
speak file "c:\temp\speak.txt" 0 100 "c:\temp\speak.wav" 48kHz16BitStereo - превращает текстовый файл в аудио, озвучивает письмена автоматом
changesysvolume -5000 - уменьшает громкость на компе
mutesysvolume 2 - заглушает/включает звук (триггер)
cmdshortcut "~$folder.desktop$" "Switch Volume" mutesysvolume 2 - кидает на Рабочий стол ярлык, которым можно сделать предыдущее действие
monitor off - выключает моник
cmdshortcut " "~$folder.desktop$ "Close All IE" win close class "IEFrame" - создаёт ярлык, закрывающий все окна ослика Ие
win trans ititle "internet explorer" 192 - делает полупрозрачным нужное окно
rasdial "My Internet" - автодозвон для неимеющих роутера
win hide class "CabinetWClass" - прячет все окна проводника со всеми открытыми папками
win -style title "my computer" 0x00C00000 - удаляет слова из заголовка программы
win settopmost title "Calculator" 1 - закрепляет окно поверх остальных
win child class "Shell_TrayWnd" hide class "button"  - прячет Пуск, не знаю кому это нужно  :)
win child class "Shell_TrayWnd" show class "TrayClockWClass" - прячет часы, можно над другом поугарать до перезагрузки
urlshortcut "http://www.nirsoft.net" "~$folder.desktop$" "NirSoft" - создаёт ярлык для сайта, можно на его основе создать автологгер-историю посещений в формате ярлыков
setdisplay 800 600 24 - устанавливает режим монитора и поллитру  ;)
execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop - бесшумно бекапит Рабочий стол
nircmd regedit "~$clipboard$" - открывает в редакторе Реестра винды ключ из буфера
setfiletime "c:\temp\myfile.txt" "24-06-2003 17:57:11" "22-11-2005 10:21:56" - дата созд/изм файла
clipboard readfile "c:\My Files\info1.txt" - копируем текст файла в буфер
paramsfile "c:\temp\folders.txt" "" "" execmd md ~$fparam.1$ - создаём дерево папок по шаблону в файле
dlg "" "" click yes - кликаем Да во всех вылетающих диалогах этих ваших Виндов
cmdwait 2000 savescreenshot "f:\temp\shot.png" - ждём 2 сек и сейваем скрин
waitprocess firefox.exe speak text "Firefox was closed" - озвучивает выход из программы
elevatecmd runassystem c:\windows\regedit.exe - запускает Регедит от админа
sendkeypress ctrl+alt+del - жмакает комбинацию клавиш
Переменные системы
folder.cookies - возвращает путь к кукам юзера
folder.system - путь к System32
loopcount - указывает количество повторов скрипта/батника
infobox "The current logged-on user is ~$sys.username$" "logged-on user" - показывает имя пользователя
savescreenshot c:\temp\scr~$currdate.MMddyyyy$-~$currtime.HHmmss$.png - сохраняет скриншот с датой/временем
multiremote - выполняет указанные команды на многих удалённых компах, например:
multiremote copy "c:\temp\computers.txt" monitor off - выключает мониторы на нужных компьютерах в локалке
cmdwait 1000 monitor off - тушит экран после паузы
loop 10 60000 savescreenshot c:\temp\scr~$loopcount$.png - 10 раз один раз в минуту делает скрин по маске
shortcut "f:\Program Files" "c:\temp\MyShortcuts" "Program Files Folder" "" "f:\winnt\system32\shell32.dll" 45 - вешает нужную иконку на ярлык
cmdshortcutkey "c:\temp" "Turn Monitor Off" "Ctrl+Shift+M" monitor off - создаёт ярлык с хоткеем
urlshortcut "http://www.google.com" "~$folder.favorites$\Search Engines" "Google" - кидает ярлык в нужную папку Избранного
exec hide "c:\temp\wul.exe" /savelangfile - запускает программу в скрытом режиме, без окна/иконки в трее
execmd del "~$folder.desktop$\calc.lnk" - втихую выполняет операции, опять повод для пранка
shexec "open" "http://www.nirsoft.net" - открывает веб-страничку в вашем любимом браузере по умолчанию
shexec "print" "d:\files\1.pdf" - печатает указанные доки
clonefiletime "c:\temp\file1.txt" "c:\temp\file2.txt" - клонирует дату создания из файла
setbrightness 60 2 - меняет яркость на нубуке  :D
killprocess "c:\winnt\system32\calc.exe" - убивает процесс, быстро и с крахом информации
closeprocess /1830 - выключает нужный процесс/окно, медленно, надёжно и по всем канонам гуи
suspendprocess "c:\winnt\system32\calc.exe" - замораживает программу, она перестаёт отвечать/закрываться
setprocesspriority iexplore.exe high - устанавливает нужный приоритет программе
setprocessaffinity "c:\winnt\system32\calc.exe" 0 1 2 3 - выделяет программе определённые ядра процессора
service pause w3svc - ставит службу на паузу
win hide ititle "culat" - прятать все окна с этим текстом в заголовке
win show class "SciCalc" - показать все окна нужного класса, одной программы
win max handle 0x00009c01 - разворачивает окно с указанным хендлером
win setsize class "IEFrame" 50 50 400 300 - меняет размер окна
win child class "Shell_TrayWnd" show class "button" - показывает все дочерние окна указанного класса/айди
win sendmsg title "calculator" 0x10 0 0 - посылает биты состояния окну через мессидж WinAPi
win dlgclick class "#32770" cancel - жмёт автоматом Отмену во всех всплывающих окнах нужной программы
win togglehide class MozillaWindowClass - скрывает-прячет/снова показывает окно (работает как переключалка)
clipboard saveimage "c:\temp\clip01.png" - сохраняет картинку из буфера в прописанный файл в нужном формате
clipboard clear - очищает, дезинфицирует буфер обмена
clipboard set ~$folder.desktop$ - копирует путь папки десктопа в буфер
clipboard saveclp "c:\temp\1.clp" - сохраняет содержимое буфера в файл стандарта, понимаемого Виндой
stdbeep - озвучивает стандартно для Винды сообщение об ошибке
setappvolume wmplayer.exe 0.75 Speakers - устанавливает уровень громкости в программе и переключает аудио
muteappvolume /1275 2 1 - отключает звук в указанном по айди процессе
setdefaultsounddevice "Microphone" 2 - устанавливает/переключает звуковые устройства по умолчанию
setcursor 100 50 - перемещает курсор в нужное место
sendkeypress ctrl+shift+esc alt+tab - посылает окну несколько хоткеев/нажатий через командную строку
sendkeypress Shift+n i r spc shift+s o f t - пишет "НирСофт" по буквам, эмулируя ввод, в активном окне
Нажатия клавиш
sendkey enter press - указываем константой
sendkey 0x2e press - по коду клавиши
sendkey shift down - полунажатие, первая фаза, без релиза
Управлению мышью на автомате
sendmouse wheel 1200 - прокрутка-робот
sendmouse left down
sendmouse move -30 20
sendmouse left dblclick
convertimage "c:\temp\test1.gif" "c:\temp\test1.png" - конвертирует картинки межформатно
convertimages "c:\temp\*.jpg" .gif - конвертит фотки по маске
savescreenshotwin *clipboard* - скриншотит в буфер нужное окно, в котором находится фокус
shellcopy "c:\temp\*.*" "d:\temp" yestoall noerrorui - копирует файло без шуму и пыли, подавляя ошибки/вопросы
filldelete "c:\temp\*.*" - затирает выбранные файлы нулями и затем удаляет, без возможности восстановления
speak file "c:\temp\speak1.txt" - озвучивает текст из файла
elevatecmd runassystem c:\windows\regedit.exe - выполняет программу от имени нужного юзера, в данном случае - из-под системной учётки
trayballoon "Hello" "This is a test..." "shell32.dll,22" 15000 - системное уведомление в трее с иконкой и таймером
mediaplay 10000 "c:\temp\1.mp3" - проигрывает файл с аудио в течение 10 секунд
writeufile - пишет файл в уникоде
setprimarydisplay - устанавливает выбранный дисплей дефолтным из нескольких
shellrefresh - обновляет шелл после обнов реестра, но без перезагрузки?
..
Много других вкусностей, но уже задолбался писать  ::)
[/spoiler]
Самое интересное/неожиданное на мой лук выделил жирным.

Только опробовать всё не хватило времени, да и остались ещё некоторые непонятки/тупняки в нире:
[spoiler=NirLags]
Есть разные однотипные функции - enable, active, activate, focus.
paramsfile "c:\temp\shortcuts.txt" "," "~q" shortcut ~$fparam.1$ "~$folder.desktop$" ~$fparam.2$ -  мозг отказывается понимать ЭТО, надеюсь что только сегодня
dlg "explorer.exe" "run" settext 12298 "calc.exe" - самые нужные функции бывают и самыми непонятными
execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop - вместо копирования файлов в папку у меня создался один файл (с именем папки) в непонятном формате, может не хватило привилегий?
[/spoiler]

Сразу после прочтения почудилось, что и наш, русский кликер должен уметь все нировские красоты кода из строки запуска с параметрами, тем более что функционал у кликера мощнее нировского. Да и некоторые фишки нира не выглядят настолько продуманными.

В справке нашёл также пару слов про консольную версию нира и про отличие от обычной: Starting from version 1.50, console version of NirCmd (nircmdc.exe) is also available. In the console version, all error messages goes to the console window, instead of using a message box. Вот.

Пишите в комментариях, какие интересные реализации вы используете и как хитрите с ниром, можете также рассказать о необычном опыте с другими консолями. Чего из данных выше указанных функций вы не знали/не ждали от возможностей нира?

12
Прочее / Re: подсветка для sublime text&
« on: September 30, 2016, 07:44:57 PM »
Эх, романтично как повествуете. Про программы сказываете аки про девушек! Любоффь, морковь :)

13
Когда читаю справку, всегда думаю, а что же значит это h в начале команд. Но только что порылся по MSDN и открыл для себя пару фактов:
1) h (в функциях hGet, hSet) значит handle (у каждого окна есть свой управляющий хендлер)
2) w (wParam) = word
3) l (lParam) = long

Пишут, что во времена 16-битной Винды параметры передавались через одно короткое 16-битное слово word и через длинное 32-битное long, а сейчас в Вин64 передаются и int64 в 64 бита соответственно (если кому интересно - здесь оригинал). На сайте указывается также и Message-структура для разных языков .NET:
[spoiler=HWnd, LParam, Msg, Result, WParam]
Имя   Описание
HWnd   Получает или задает дескриптор окна сообщения.
LParam   Задает поле LParam сообщения.
Msg   Получает или задает идентификатор сообщения.
Result   Указывает значение, возвращаемое операционной системе Windows в ответ на обработку сообщения.
WParam   Получает или задает поле WParam сообщения.
[/spoiler]

Также, если вы видели в справке кликера последнюю страницу (приложение с кодами клавиш), то возможно вам будет интересно посмотреть и более полную версию 16-ричных кодов на сайте Мелкософта (в статье Virtual-Key Codes for Windows).

А вот что говорится в доке по ВинАПИ, про функцию отрисовки окон, в которой и задаются все эти ваши LParam да WParam:
[spoiler=WndProc]
Эта функция производит обработку сообщений для окна. Мы ее связываем с окном при заполнении структуры класса окна WNDCLASS в поле lpfnWndProc:

WNDCLASS WC;
......
WC.lpfnWndProc = WndProc;
Вот эта функция WndProc и будет получать сообщения, которые Windows будет отсылать окну. Соответственно эта функция должна быть объявлена ранее. Прототип у этой функции такой:

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM,LPARAM);
Общий вид для реализации:

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wparam,LPARAM lparam)
{
   if (Message == WM_DESTROY )
   {
      PostQuitMessage(0);
      return 0;
   }
   return DefWindowProc(hwnd,Message,wparam,lparam);
}
В этой функции мы обрабатываем сообщения от Windows. При этом, если обработку не совершаем, то вызываем функцию по умолчанию DefWindowProc, которая умеет обрабатывать сообщения по умолчанию.


LRESULT DefWindowProc

   HWND hWnd,   // указатель окна
   UINT Msg,      // идентификатор сообщения
   WPARAM wParam,   // первый параметр сообщения
   LPARAM lParam   // второй параметр сообщения
);
Возврашает результат обработки сообщения. Обычно в функции WndProc организуется огромный switch для обработки сообщений.
[/spoiler]
И вот пример одной из конкретных реализаций, так сказать каркас:
[spoiler]
Code: (cpp) [Select]
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    switch(msg)
    {
        case WM_CLOSE:
            DestroyWindow(hwnd);
        break;
        case WM_DESTROY:
            PostQuitMessage(0);
        break;
        default:
            return DefWindowProc(hwnd, msg, wParam, lParam);
    }
    return 0;
}
[/spoiler]

Также на МСДН нашёл страничку с перечнем разных типов оконных WM-сообщений, где говорится, что кроме WM, есть и другие виды сообщений:
[spoiler=Типы определяемых системой сообщений]
Prefix   Message category   Documentation
ABM and ABN   Application desktop toolbar   Shell Messages and Notifications
ACM and ACN   Animation control   Animation Control Messages and Animation Control Notifications
BCM, BCN, BM, and BN   Button control   Button Control Messages and Button Control Notifications
CB and CBN   ComboBox control   ComboBox Control Messages and ComboBox Control Notifications
CBEM and CBEN   ComboBoxEx control   ComboBoxEx Messages and ComboBoxEx Notifications
CCM   General control   Control Messages
CDM   Common dialog box   Common Dialog Box Messages
DFM   Default context menu   Shell Messages and Notifications
DL   Drag list box   Drag List Box Notifications
DM   Default push button control   Dialog Box Messages
DTM and DTN   Date and time picker control   Date and Time Picker Messages and Date and Time Picker Notifications
EM and EN   Edit control   Edit Control Messages, Edit Control Notifications, Rich Edit Messages, and Rich Edit Notifications
HDM and HDN   Header control   Header Control Messages and Header Control Notifications
HKM   Hot key control   Hot Key Control Messages
IPM and IPN   IP address control   IP Address Messages and IP Address Notifications
LB and LBN   List box control   List Box Messages and List Box Notifications
LM   SysLink control   SysLink Control Messages
LVM and LVN   List view control   List View Messages and List View Notifications
MCM and MCN   Month calendar control   Month Calendar Messages and Month Calendar Notifications
PBM   Progress bar   Progress Bar Messages
PGM and PGN   Pager control   Pager Control Messages and Pager Control Notifications
PSM and PSN   Property sheet   Property Sheet Messages and Property Sheet Notifications
RB and RBN   Rebar control   Rebar Control Messages and Rebar Control Notifications
SB and SBN   Status bar window   Status Bar Messages and Status Bar Notifications
SBM   Scroll bar control   Scroll Bar Messages
SMC   Shell menu   Shell Messages and Notifications
STM and STN   Static control   Static Control Messages and Static Control Notifications
TB and TBN   Toolbar   Toolbar Control Messages and Toolbar Control Notifications
TBM and TRBN   Trackbar control   Trackbar Control Messages and Trackbar Control Notifications
TCM and TCN   Tab control   Tab Control Messages and Tab Control Notifications
TDM and TDN   Task dialog   Task Dialog Messages and Task Dialog Notifications
TTM and TTN   Tooltip control   Tooltip Control Messages and Tooltip Control Notifications
TVM and TVN   Tree-view control   Tree View Messages and Tree View Notifications
UDM and UDN   Up-down control   Up-Down Messages and Up-Down Notifications
[/spoiler]

А вот какие существуют виды WM-сообщений общего назначения:
[spoiler]
Clipboard Messages
Clipboard Notifications
Common Dialog Box Notifications
Cursor Notifications
Data Copy Message
Desktop Window Manager Messages
Device Management Messages
Dialog Box Notifications
Dynamic Data Exchange Messages
Dynamic Data Exchange Notifications
Hook Notifications
Keyboard Accelerator Messages
Keyboard Accelerator Notifications
Keyboard Input Messages
Keyboard Input Notifications
Menu Notifications
Mouse Input Notifications
Multiple Document Interface Messages
Raw Input Notifications
Scroll Bar Notifications
Timer Notifications
Window Messages
Window Notifications
[/spoiler]

А вот как выглядит вызов функции SendMessage под cpp:
Code: (cpp) [Select]
LRESULT WINAPI SendMessage(
  _In_ HWND   hWnd,
  _In_ UINT   Msg,
  _In_ WPARAM wParam,
  _In_ LPARAM lParam
);
Взято отсюда, также там есть пару ремарок про используемые параметры. А вот какой вид имеет функция отрисовки не для основного окна, а для диалогового:
[spoiler]
Code: (cpp) [Select]
BOOL CALLBACK DlgProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
default:
return FALSE;
}
}
[/spoiler]

Пока что не знаю, зачем точно это здесь и как именно это применить, но надеюсь, что здесь найдётся герой, изучащий всё это и ответящий нам на некоторые возникающие вопросы по месседжам.

14
Ошибки / Re: Кавычки
« on: September 30, 2016, 03:06:20 PM »
Я пол интернета облазил, когда искал решение нажимать с ctrl или с shift через POSTMESSAGE. Решения не нашёл.
Полынтернета в смысле русского? Или MSDN тоже, который советуется в справке? Может, нашим программерам не нужны эти постмессаджи или они спрашивают об этом на буржуйских сайтах.

Вычитал, что оказывается в системе помимо буфера клавиатуры есть ещё какие-то флаги влияющие на то с шифтом выводится символ или нет. И вот их нужно менять, а эти флаги только в одном экземпляре и они относятся только к активному окну.
Это что-то вроде 16-ого кода-псевдонима для клавиш, который вычисляется методом сложения кодов отдельных кодов клавиш, входящих в клавиатурную комбинацию? Или это другое и задаётся по-другому?

15
Ошибки / Re: Кавычки
« on: September 30, 2016, 02:30:43 PM »
сработает в зависимости от режима клавиатуры и языка ввода.
Все SHIFT, CTRL, ALT, CAPSLOCK и ноутбуковские спецкнопки с включенным языком на это влияют.
Она очень нужна, но это другая функция

В том то и соль, что ни одну клавишу-модификатор нельзя использовать с кейстрингом, хотя это очевидно нужно; это и порождает множество лишних строк кода в виде пар ctrlUp +ctrlDown. А насколько было бы проще, если б в самой функции keystring() можно было б применять подстановки вроде #CTRL?!! Которые кстати уже есть в виде констант кодов клавиш. Это ещё не говоря про привязку, с ней та же проблема, её тоже нужно отключать, чтоб ввести в окно клавиши ctrl или shift.

Это другая фунция и другая история  :)

Pages: [1] 2