All Projects → lontivero → Open.WinKeyboardHook

lontivero / Open.WinKeyboardHook

Licence: MIT license
A simple and easy-to-use .NET managed wrapper for Low Level Keyboard hooking.

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to Open.WinKeyboardHook

Simplified-JNA
Multi-threaded JNA hooks and simplified library access to window/key/mouse functions.
Stars: ✭ 30 (+50%)
Mutual labels:  keyboard-events, hooking
Keyboardjs
A JavaScript library for binding keyboard combos without the pain of key codes and key combo conflicts.
Stars: ✭ 1,881 (+9305%)
Mutual labels:  keyboard-events
Pine
Dynamic java method hook framework on ART.
Stars: ✭ 171 (+755%)
Mutual labels:  hooking
re-pressed
re-pressed is a clojurescript library that handles keyboard events for re-frame applications.
Stars: ✭ 150 (+650%)
Mutual labels:  keyboard-events
Anticuckoo
A tool to detect and crash Cuckoo Sandbox
Stars: ✭ 233 (+1065%)
Mutual labels:  hooking
global-keypress
Global key press event emitter.
Stars: ✭ 25 (+25%)
Mutual labels:  keyboard-events
Pwn Mbr
A simple MBR hijack demonstration
Stars: ✭ 153 (+665%)
Mutual labels:  hooking
Intellij Key Promoter X
Modern IntelliJ plugin to learn shortcuts for buttons
Stars: ✭ 2,689 (+13345%)
Mutual labels:  keyboard-shortcut
ember-key-manager
A service for (un)binding keyboard up and down events.
Stars: ✭ 39 (+95%)
Mutual labels:  keyboard-events
react-keyevent
An easy-to-use keyboard event react component, Package size less than 3kb
Stars: ✭ 38 (+90%)
Mutual labels:  keyboard-events
hidstream
Streaming HID events in Node.js
Stars: ✭ 52 (+160%)
Mutual labels:  keyboard-events
Advanced Video
Stars: ✭ 240 (+1100%)
Mutual labels:  hooking
w3c-keys
keyboardEvent.key compatible key codes with Typescript Definitions.
Stars: ✭ 55 (+175%)
Mutual labels:  keyboard-events
Corehook
A library that simplifies intercepting application function calls using managed code and the .NET Core runtime
Stars: ✭ 191 (+855%)
Mutual labels:  hooking
Keyboard
Hook and simulate global keyboard events on Windows and Linux.
Stars: ✭ 2,687 (+13335%)
Mutual labels:  keyboard-events
Iat patcher
Persistent IAT hooking application - based on bearparser
Stars: ✭ 170 (+750%)
Mutual labels:  hooking
Chordly
Chordly is a javascript library that may be used to detect and act upon key sequences entered by a user.
Stars: ✭ 14 (-30%)
Mutual labels:  keyboard-events
DbgChild
Debug Child Process Tool (auto attach)
Stars: ✭ 221 (+1005%)
Mutual labels:  hooking
react-tags-input
[Not Actively Maintained] An input control that handles tags interaction with copy-paste and custom type support.
Stars: ✭ 26 (+30%)
Mutual labels:  keyboard-shortcut
ng-terminal
NgTerminal is a terminal component on Angular 12. the Ivy distribution's released from v5.0.0.
Stars: ✭ 87 (+335%)
Mutual labels:  keyboard-events

Build status NuGet version

Open.WinKeyboardHook

A simple and easy-to-use .NET managed wrapper for Low Level Keyboard hooking.

Goals

The main goal is to abstract away the complexities inherit to intercept and translate global keystrokes (KeyDown / KeyUp / KeyPress) in the system.

Usage

public partial class TestForm : Form
{
    private readonly IKeyboardInterceptor _interceptor;

    public TestForm()
    {
        InitializeComponent();

        // Everytime a key is press we want to display it in a TextBox
        _interceptor = new KeyboardInterceptor();
        _interceptor.KeyPress += (sender, args) => txt.Text += args.KeyChar;
    }

    // Start and Stop capturing keystroks
    private void BtnClick(object sender, EventArgs e)
    {
        if(!_capturing)
        {
            _interceptor.StartCapturing();
            btn.Text = "Stop";
            btn.BackColor = Color.Red;
        }
        else
        {
            _interceptor.StopCapturing();
            btn.Text = "Start";
            btn.BackColor = Color.Lime;
        }
        _capturing = !_capturing;
    }
}

Real world example

Open.WinKeyboardHook is been used as the key component in KeyPadawan project, a useful tool for presentation and screencasts that allow to display the shortcuts that a presenter uses.

Development

Open.WinKeyboardHook is been developed by Lucas Ontivero (@lontivero). You are welcome to contribute code. You can send code both as a patch or a GitHub pull request.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].