Захват и отправка ввода клавиатуры / мыши в C # - PullRequest
4 голосов
/ 11 июля 2009

Я ищу способ отправки и получения информации о клавиатуре независимо от того, какое приложение имеет фокус. Я помню, как в колледже я видел презентацию о старом Windows API, которая позволяла вам изменять положение курсора и отправлять правые клики и тому подобное.

Помимо User32.dll, есть ли способ сделать это с помощью .net framework?

Ответы [ 2 ]

9 голосов
/ 11 июля 2009

AFAIK, нет способа захватить глобальные события клавиатуры и мыши. Но есть несколько статей о CodeProject, которые демонстрируют создание оболочек классов .NET для них.

Вы можете проверить их здесь:

1) Обработка глобальных мышиных и клавиатурных хуков в C #

2) Глобальная библиотека мыши и клавиатуры

РЕДАКТИРОВАТЬ: Кстати, я создал небольшой кейлоггер в C # с использованием 1-й библиотеки:)

4 голосов
/ 11 июля 2009

Несколько месяцев назад я использовал C # для создания приложения, которое считывало бы из нунчака и двигало мышь. Моим первым вариантом было использование курсора Class для перемещения мыши, как это

Cursor.Position = new Point(Cursor.Position.X + 10, Cursor.Position.Y + 10);

Все было хорошо, но не работало, играя в игры, потому что они управляют мышью по-другому, поэтому в конце я использовал Global Hooks, которые Киртан упомянул здесь (+1). Исходя из своего опыта, я рекомендую вам использовать Global Hooks.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...