Глобальная имитация нажатий клавиш - C#

Узнай цену своей работы

Формулировка задачи:

Изучаю C#, в программировании не первый год, поэтому решил сразу написать что-нибудь посерьезнее, чем hello world. Пишу бота для игры, необходимо имитировать нажатие некоторых клавиш. SendKeys не подходит, т.к. нет возможности имитировать keydown и keyup одновременно. Есть ли стандартный библиотеки C#, либо какие-то сторонние библиотеки, позволяющие решить мою проблему? P.S. В голову взбрела идиотская идея - построить робота с сервоприводами, чтобы он нажимал клавиши. Знатный бы костыль получился.

Решение задачи: «Глобальная имитация нажатий клавиш»

textual
Листинг программы
  public class Program
  {
    [DllImport("user32.dll")]
    public static extern void keybd_event(byte vk, byte scan, int flags, int extrainfo);
 
    const int KeyUp = 0x2;
 
    static void Main()
    {
      while (true)
      {
        keybd_event(0x41, 0, 0, 0); // key press
        keybd_event(0x41, 0, KeyUp, 0); // key release
 
        Thread.Sleep(1000);
      }
 
      Console.ReadLine();
    }
  }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4 из 5