Need help with Interception?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

764 Stars 201 Forks 41 Commits 14 Opened issues


The Interception API aims to build a portable programming interface that allows one to intercept and control a range of input devices.

Services available


Need anything else?

Contributors list

# 145,230
1 commit


Download the latest release


Source code is built upon Windows Driver Kit Version 7.1.0.

Simple build scripts (

) are provided to build using specific build environments of the WDK, they require the environment variable
to be previously set to the WDK installation directory.
  • Tested from Windows XP to Windows 10.

Driver installation

Drivers can be installed through the command line installer, but driver installation requires execution inside a prompt with administrative rights.


without any arguments inside an console executed as administrator and it will give instructions for installation.


Interception is dual-licensed.

For non-commercial purposes it adopts LGPL for the library and its source code, with rights of distribution of the related binary assets (drivers and installers ) once communication with drivers happen solely by use of the library and its API.

For commercial purposes it adopts two other licenses which can be checked in the licenses directory:

  • Interception API License:
    It's similar to the non-commercial license, solely removing restrictions for commercial usage.
    It also includes an additional asset which is an installer library, so that driver installation can be embedded silently in your own installer.

  • Interception License:
    Provides access to all source code, including drivers and installers.

Please contact me at [email protected] for acquiring a commercial license.

Use cases

Interception has been used around the world in cases I couldn't imagine when I first created it:

  • Helping people with accessibility limitations, tailoring systems according to their limitations.
  • By companies in aviation training, to connect many devices at once and customizing each one.
  • By companies providing SCADA (supervisory control and data acquisition) solutions.
  • In game applications like BOTs and control customization.
  • To construct an emacs mode of the system.
  • To customize supermarket cashier's systems.
  • In doctoral thesis about typing pattern recognition for security applications.
  • Home theater automation.
  • ...

For fun:

lissajous rose butterfly

© 2008 Francisco Lopes

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.