Здравствуйте, гость ( Вход | Регистрация )

2 страниц V < 1 2  
Ответить в эту темуОткрыть новую тему
> Arduino, Нажатия мыши и клавиатуры в обход защиты от кликеров
cirus
сообщение 19.1.2021, 3:39
Сообщение #21


**********

Elder
Сообщений: 3.104
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 19750
Пользователь №: 16.971
Возраст: 29



Цитата
А вот в ручную все же можно повесить порт или пилота - частым запуском

Тут и стараться не надо. Остановка скрипта при открытом порте и после этого потребуется перезапуск пилота.

Можно ещё длл попробовать, но в скорее всего ничего не изменится, т. к. в ней тот же самый код.
Прикрепленный файл  Arduino.zip ( 101,33 килобайт ) Кол-во скачиваний: 6

Архив распаковать и закинуть в папку с пилотом. Тестил только на win10.
Пример использования:
код
Код
--lua
local ffi = require("ffi")
log 'clear' log 'mode compact'
local hw = ffi.load('Arduino.dll')

ffi.cdef[[
    int get_port(int VID, int PID);
    int set_port(int com);
    int set_delay_mouse(int ms);
    int set_delay_mousemove(int ms);
    int set_offset_mousemove(int step);
    int set_random_delay_mouse(int rand);
    int mouse_move(int x, int y);
]]

local com = hw.get_port(2341, 8036)
hint('Номер порта: ' .. tostring(com))
if com < 1 then -- если номер порта меньше 1
log ('error = ' .. tostring(com)) -- код ошибки, если 0 значит устройство с указанными vip и pid не найдено
end_script ()
end

hw.set_port(com)
hw.set_delay_mouse (20) -- установить паузу между нажатиями клавиш мыши
hw.set_random_delay_mouse(10) -- установить рандом между нажатиями клавиш мыши от 0 до 9 мсек
hw.set_offset_mousemove(4) -- шаг перемещения курсора, чем больше тем быстрее перемещается
hw.set_delay_mousemove(2) -- установить паузу между каждый шагом перемещения мыши, чем меньше, тем быстрее перемещается

hw.mouse_move (651, 225) -- переместить мышь
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
KotMC
сообщение 19.1.2021, 23:06
Сообщение #22


*

Registred
Сообщений: 9
Регистрация: 10.1.2021
Группа: Пользователи
Наличность: 17
Пользователь №: 19.851
Возраст: 36



Цитата(cirus @ 18.1.2021, 13:16) *

KotMC, этот файл в папку с пилотом закиньте


Этот модуль можно использовать вместо , модуля из шапки?
Список функций для него не меняется?

Зависания пилота происходили скорее всего из-за ноутбука. На двух из трех usb портов работает с рандомными завываниями, на одном более менее стабильно. Проверил на других компьютерах - пилот, модуль, ардуино, скрипт работаю нормально.

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 19.1.2021, 23:46
Сообщение #23


**********

Elder
Сообщений: 3.104
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 19750
Пользователь №: 16.971
Возраст: 29



Цитата
Этот модуль можно использовать вместо , модуля из шапки?

Можно. И не только в пилоте, а любой другой программе, которая может подключать библиотеки.
Цитата
Список функций для него не меняется?

Вызов некоторых функций отличается.
Список функций Arduino.dll
Код
--lua
local ffi = require("ffi")
local hw = ffi.load('Arduino.dll')

ffi.cdef[[
    int get_port (int vid, int pid);
    int set_port (int COMport);
    int set_delay_key (int ms);
    int set_delay_mouse (int ms);
    int set_delay_mousemove(int ms);
    int set_offset_mousemove(int step);
    int set_random_delay_key(int rand);
    int set_random_delay_mouse(int rand);

    int key (int code);
    int key_down (int code);
    int key_up (int code);
    int text (int text);

    int mouse_move (int x, int y);
    int mouse_click (int button);
    int mouse_click_dbl (int button);
    int mouse_left (int x, int y);
    int mouse_right (int x, int y);
    int mouse_middle (int x, int y);

    int mouse_left_dbl (int x, int y);
    int mouse_right_dbl (int x, int y);
    int mouse_middle_dbl (int x, int y);

    int mouse_left_down (int x, int y);
    int mouse_right_down (int x, int y);
    int mouse_middle_down (int x, int y);

    int mouse_left_up (int x, int y);
    int mouse_right_up (int x, int y);
    int mouse_middle_up (int x, int y);

    int mouse_drag_left (int x, int y, int x2, int y2);
    int mouse_drag_right (int x, int y, int x2, int y2);

    int mouse_wheel_up (int x, int y, int count);
    int mouse_wheel_down (int x, int y, int count);
]]

Т. е. вместо hw.mouse.move (651, 225) надо hw.mouse_move (651, 225).
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
KotMC
сообщение 20.1.2021, 0:17
Сообщение #24


*

Registred
Сообщений: 9
Регистрация: 10.1.2021
Группа: Пользователи
Наличность: 17
Пользователь №: 19.851
Возраст: 36



Про Arduino.dll понятно, а модуль Arduino.lua из "сообщения 17", чем отличается от модуля из шапки?
Только выводом информации в лог об открытии закрытии порта или еще чем-то?
Его тоже можно использовать?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 20.1.2021, 0:36
Сообщение #25


**********

Elder
Сообщений: 3.104
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 19750
Пользователь №: 16.971
Возраст: 29



Цитата
а модуль Arduino.lua из "сообщения 17", чем отличается от модуля из шапки?

Только вывод в лог добавлен.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

2 страниц V < 1 2
Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 1 Crocotea

 

- Текстовая версия | Версия для КПК Сейчас: 23.1.2021, 5:21
Designed by Nickostyle