Skip to content

Клавиатура и мышь

Gleb Golovin edited this page Jun 25, 2015 · 1 revision

Что нужно знать о симуляции работы клавиатуры и мыши

Реализовано два способа симуляции, отличающиеся используемыми библиотеками:

У каждой из них есть свои плюсы и минусы.

SendKeys:

  • Библиотека из коробки;
  • Нельзя симулировать единичное действие, как, например, зажать кнопку;
  • Есть проблема с комбинацией Ctrl+A.

InputSimulator:

  • Обертка над Win32 SendInput методом (красиво и без лишнего кода);
  • Есть поддержка единичных действий;
  • Не со всеми элементами работает корректно.

Используемый симулятор настраивается следующим образом:

CruciatusFactory.Settings.KeyboardSimulatorType = KeyboardSimulatorType.BasedOnWindowsFormsSendKeysClass;
CruciatusFactory.Settings.KeyboardSimulatorType = KeyboardSimulatorType.BasedOnInputSimulatorLib;

При выполнении автоматизационной магии очень важно не трогать мышку и клавиатуру, так как симуляция их работы будет происходить параллельно с вашими действиями и может повлиять на выполнение (сдвиг курсора, смена фокуса и т.п.)