Google дает это, но похоже, что это работает только для класса WindowsForms. Я совершенно новичок в С#. Я пытаюсь сделать программу, которая отслеживает событие, а затем (например) действует так, как если бы была нажата клавиша «H». Я на самом деле не хочу беспокоиться о том, что такое активное окно или что-то еще, или о том, чтобы отправить нажатие клавиши в приложение, я просто хочу, чтобы программа действовала так, как если бы я физически нажал кнопку «H» на моей клавиатуре. Класс SendKeys не работает в общем классе. Я иду об этом совершенно неправильно?
Как имитировать нажатия клавиш в С#?
comment
Один C# не может справиться с этим. Вам нужно получить более низкий уровень, чем этот. Вы можете использовать pinvoke для вызова необходимых клавиатурных хуков. Вот пример (боюсь, заброшенный, но функция получения событий клавиатуры уже есть) -- github. com/eberle1080/Kaptivate
- person Chris Eberle   schedule 02.02.2012
comment
blogs.msdn.com/b/toub/archive/ 03/05/2006/589423.aspx
- person Mitch Wheat   schedule 02.02.2012
comment
Этот вопрос включает ответы, ссылающиеся практически на все вариации знаю.
- person M.Babcock   schedule 02.02.2012
comment
Некоторые проекты могут быть действительно плохим выбором, когда вы начинаете программировать. Это одна из них.
- person Hans Passant   schedule 02.02.2012
comment
Я ответил на тот же вопрос на другой странице. Пожалуйста, проверьте здесь. Надеюсь это поможет.
- person Rajesh   schedule 01.09.2012
Ответы (1)
Из Как: имитировать события мыши и клавиатуры в коде< /strong>:
Windows Forms предоставляет несколько вариантов программного моделирования ввода с помощью мыши и клавиатуры.
Моделирование ввода с помощью мыши
Лучший способ смоделировать события мыши — вызвать методOnEventName
, который вызывает событие мыши, которое вы хотите смоделировать.Имитация ввода с клавиатуры
Хотя вы можете имитировать ввод с клавиатуры, используя описанные выше стратегии для ввода с помощью мыши, Windows Forms также предоставляет классSendKeys
для отправки нажатий клавиш в активное приложение.
person
Raathigesh
schedule
02.02.2012