Henooh Device Emulator

HenoohDeviceEmulator provides a simple .NET (C#) interface to emulate Keyboard and Mouse input and output. Input classes are called Controllers and Output classes are called Observers.


Using Windows Forms or Windows WPF SendKey methods can emulate text entry, but not actual key strokes. Other available input simulators or emulators lack ability to send key strokes that is behind DirectX layers, and rarely provides output features as one package. HenoohDeviceEmulator provides easy way to gain hardware access to Keyboard and Mouse devices, both input and output. Henooh Device Emulator is composed of four separate classes each designed to handle their own functionality.

Key Features

Provides Keyboard Input features (Able to control a Keyboard device)
Provides Mouse Input features (Able to control a Mouse device)
Provides Keyboard Status features (Able to observe Keyboard actions)
Provides Mouse Status features (Able to observe Mouse actions)


Using HenoohDocumentGenerator, Auto-generated document is located here. HenoohDeviceEmulatorDocumentation has examples on how to use the code, as well as list of all methods, properties and events.

Example Coding Style

I have included a sample code, full code is available upon request. Code below is Move() method for HenoohMouse. Using some simple math, it emulates natural movement as if a human was to control the mouse.

Code Example


This project was originally written in C/C++, for use of project in creation of automation tasks. Over time, the project needed additional requirements and bug fixes, have been ported to C# and compiled as dll (Direct Link Library).


Latest version 1.1.3 Released on April 5th, 2018

Henooh.DeviceEmulator on Nuget.org