@scmbg

Как сделать кликер на C#?

Для проекта нужен автокликер, но проблема в том, что вариант через user32.dll mouse_event не подходит, так как эмулирует нажатия кражей курсора пользователя. А подразумевается, что кликеров будет не менее 3 работать одновременно и при таком событии дел они просто будут мешать друг другу. Автокликер помимо того, что будет кликать – будет и зажимать лкм условно на секунды 3. Есть ли какие-то библиотеки на этот случай? Или может быть возможно создать несколько курсоров?

UPD: Под автокликером я подразумеваю эмуляцию нажатий мыши на любом месте экрана. Приведу аналогию для простоты понимания: скрипт тупо выделяет папки на рабочем столе, перетаскивает в течении 3 сек, открывает. Принцип в моем проекте тот же, только таких процессов будет 3 и пользователь должен иметь возможность свободно пользоваться мышью не нарушая работу скрипта.
  • Вопрос задан
  • 608 просмотров
Решения вопроса 1
@SayMo0n
Система не позволит тыкать в несколько окон параллельно, если задача позволяет задумайтесь о виртуалках и прокликивании того что нужно уже в них.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
Ну если mouse_event не подходит, то остается вариант отправки сообщений в окно чере SendMessage. Насколько этот вариант будет работоспособным в вашем случае сказать не могу.
Ответ написан
Комментировать
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Рассмотрите с чисто финансовой стороны
C++ Enginer - что бы собрать кастомную сборку хрома, - от 150к долларов в год
JS Enginer - что бы собрать плагин хрома, - от 50к долларов в год
QA Enginer - что запустить драйвер силениума для хрома, - от 80к долларов в год

Так сколько вы потратите времени на кликер и когда он окупится?
Ответ написан
BasiC2k
@BasiC2k
.NET developer (open to job offers)
Работа трёх кликеров одновременно равноценно использованию трёх мышек. В Windows это не предусмотрено., т.к. пользователь всего-лишь один. Все клики на экране (с помощью ПО) будут производиться как эмуляция кликов мыши, последовательно. Работать при этом за ПК будет практически невозможно.
Если Вы хотите, чтобы что-то выполнялось фоновым процессом, Вам нужно пересмотреть подход к реализации и найтидругие способы выполнения задач. Например перетаскивание файла из папки в другую папку вполне можно сделать фоновой задачей.
Ответ написан
Комментировать
@rPman
Кажется я уже отвечал на этот вопрос
c# - худший выбор для данной задачи, так как все придется делать через win32, лучшим выбором тут будет c++ или c

И да, с некоторыми шансами это не поможет.

p.s. с высокой вероятностью симуляция кликов через SendMessage с майкрософтовским файловым эксплорером не сработает, там такой п..ц наворочен, когда то давно давно я ковырялся в нем со spy++. С другой стороны, в win11 его полностью переписали, может стало легче?
Ответ написан
Комментировать
YaPA24
@YaPA24
IT эксперт
С мышками всё не просто. Видел дискретную имитацию на питоне... но пользователю(без эмуляторов) за мышь в этот момент браться не получиться.
Предлагаю использовать "отправку нажатие клавиш клавиатуры" SendMessage ! Оно даже с не активными окнами работает!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы