Zireael |
Отправлено: 18 Декабря, 2020 - 10:55:55
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Arduino позволяет эмулировать нажатия клавиш клавиатуры и мыши, в том числе в тех приложениях, в которых GameGuard, Frost и подобные блокируют нажатия. Работает только с активным окном. Требуется плата Arduino Micro или Arduino Leonardo с микроконтроллером ATmega32u4. Эти платы определяются как USB устройство. Ссылка на aliexpress
https://drive.google.com/file/d/...view?usp=sharing
В архиве драйвер для ардуино, длл для передачи команд, скетч (код, выполняемый ардуино) и пример использования клавиатуры и мыши.
1. Скачать и установить Arduino IDE. https://www.arduino.cc/en/software
2. Установить драйвер для ардуино. Файл CH341SER.EXE из архива.
3. Открыть Arduino IDE, пункт меню 'Инструменты', выбрать тип платы и порт.
4. Файл Arduino.dll из архива закинуть в папку с kibor.
5. Скетч загрузить в ардуино. Для этого скопировать содержимое файла Скетч.txt из архива, вставить в Arduino IDE, нажать кнопку 'Загрузка'.
Для работы функций мыши нужно в настройках мыши снять галочку 'Включить повышенную точность установки указателя'. Все координаты в командах мыши указывать экранные, т. е. относительно левого верхнего угла экрана.
В функцию get_port (2341, 8036) нужно передавать vid и pid ардуино. Узнать их можно в Arduino IDE, пункт меню 'Инструменты', 'Получить информацию о плате'.
Список функций длл (Отобразить)get_port (vid, pid) - узнать в каком COM порте находится ардуино
set_port (COMport) - установить номер COM порта
set_delay_key (ms) - установить паузу между нажатиями клавиш клавиатуры
set_delay_mouse (ms) - установить паузу между нажатиями кнопок мыши
set_delay_mousemove(ms) - установить паузу в мсек между каждым шагом перемещения курсора, чем меньше, тем быстрее перемещается курсор
set_offset_mousemove(step) - шаг перемещения курсора от 1 до 127, чем больше, тем быстрее перемещается курсор
set_random_delay_key(random) - рандом в мсек между нажатием и отпусканием клавиш клавиатуры
set_random_delay_mouse(random) - рандом в мсек между нажатием и отпусканием клавиш
key (code) - нажать клавишу клавиатуры, code - код клавиши ASCII
key_down (code) - зажать (не отжимая) клавишу клавиатуры
key_up (code) - отжать клавишу клавиатуры
text (text) - отослать текст, в том числе русские символы
mouse_move (x, y) - переместить курсор
mouse_click (button) - кликнуть в текущих координатах курсора, button - одна из констант кнопки мыши (смотреть коды клавиш)
mouse_click_dbl (button) - двойной клик в текущих координатах курсора
mouse_left (x, y) - клик левой кнопкой
mouse_right (x, y) - клик правой кнопкой
mouse_middle (x, y) - клик средней кнопкой
mouse_left_dbl (x, y) - двойной клик левой кнопкой мыши
mouse_right_dbl (x, y) - двойной клик правой кнопкой мыши
mouse_middle_dbl (x, y) - двойной клик средней кнопкой мыши
mouse_left_down (x, y) - зажать (не отжимая) левую кнопку мыши
mouse_right_down (x, y) - зажать (не отжимая) правую кнопку мыши
mouse_middle_down (x, y) - зажать (не отжимая) среднюю кнопку мыши
mouse_left_up (x, y) - отжать левую кнопку мыши
mouse_right_up (x, y) - отжать правую кнопку мыши
mouse_middle_up (x, y) - отжать среднюю кнопку мыши
mouse_drag_left (x, y, x2, y2) - зажать левую кнопку мыши в точке x y, переместить в точку x2 y2
mouse_drag_right (x, y, x2, y2) - зажать правую кнопку мыши в точке x y, переместить в точку x2 y2
mouse_wheel_up (x, y, count) - прокручивание колёсика мыши вверх, count - насколько щелчков прокрутить
mouse_wheel_down (x, y, count) - прокручивание колёсика мыши вниз, count - насколько щелчков прокрутить
Коды клавиш (Отобразить)MOUSE_LEFT 1
MOUSE_RIGHT 2
MOUSE_MIDDLE 4
KEY_LEFT_CTRL 0x80
KEY_LEFT_SHIFT 0x81
KEY_LEFT_ALT 0x82
KEY_LEFT_GUI 0x83
KEY_RIGHT_CTRL 0x84
KEY_RIGHT_SHIFT 0x85
KEY_RIGHT_ALT 0x86
KEY_RIGHT_GUI 0x87
KEY_UP_ARROW 0xDA
KEY_DOWN_ARROW 0xD9
KEY_LEFT_ARROW 0xD8
KEY_RIGHT_ARROW 0xD7
KEY_BACKSPACE 0xB2
KEY_TAB 0xB3
KEY_RETURN 0xB0
KEY_ESC 0xB1
KEY_INSERT 0xD1
KEY_DELETE 0xD4
KEY_PAGE_UP 0xD3
KEY_PAGE_DOWN 0xD6
KEY_HOME 0xD2
KEY_END 0xD5
KEY_CAPS_LOCK 0xC1
KEY_F1 0xC2
KEY_F2 0xC3
KEY_F3 0xC4
KEY_F4 0xC5
KEY_F5 0xC6
KEY_F6 0xC7
KEY_F7 0xC8
KEY_F8 0xC9
KEY_F9 0xCA
KEY_F10 0xCB
KEY_F11 0xCC
KEY_F12 0xCD
KEYPAD_0 0xEA
KEYPAD_1 0xE1
KEYPAD_2 0xE2
KEYPAD_3 0xE3
KEYPAD_4 0xE4
KEYPAD_5 0xE5
KEYPAD_6 0xE6
KEYPAD_7 0xE7
KEYPAD_8 0xE8
KEYPAD_9 0xE9
KEYPAD_ASTERIX 0xDD
KEYPAD_ENTER 0xE0
KEYPAD_MINUS 0xDE
KEYPAD_PERIOD 0xEB
KEYPAD_PLUS 0xDF
KEYPAD_SLASH 0xDC
KEY_NUM_LOCK 0xDB
KEY_PAUSE 0xD0
KEY_PRINTSCREEN 0xCE
KEY_SCROLL_LOCK 0xCF |
|
|
Zireael |
Отправлено: 21 Декабря, 2020 - 19:04:40
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Иногда не прожимает клавиши.
В игре с защитой или блокноте тоже?
Какая функция key, key_up/key_down или text?
Цитата: Я так понимаю, что нужно играться с set_delay_key?
Попробуйте увеличить.
Нажатия проходят только в активное окно. Т. е. если не переключиться в окно, то ничего не нажмёт.(Отредактировано автором: 21 Декабря, 2020 - 19:05:48) |
|
|
dulger |
Отправлено: 21 Декабря, 2020 - 21:07:11
|
Участник
Покинул форум
Сообщений всего: 70
Дата рег-ции: Февр. 2017
Репутация: 0
|
Zireael пишет: Цитата: Иногда не прожимает клавиши.
В игре с защитой или блокноте тоже?
Какая функция key, key_up/key_down или text?
Цитата: Я так понимаю, что нужно играться с set_delay_key?
Попробуйте увеличить.
Нажатия проходят только в активное окно. Т. е. если не переключиться в окно, то ничего не нажмёт.
Игра со СмартГуард. Увеличил set_delay_key до 25 и всё работает отлично. |
|
|
|