This is an Application to block input from a secondary keyboard and instead run custom defined Macros. Currently its ready for daily use. Its an alternative to LuaMacros. Newest Release
- ✔ Distinguishing between keyboards
- ✔ Blocking input from certain keyboard
- ✔ GUI for creating custom macros to run apps or send other keystrokes
- ✔ Admin process support
- ✔ Enabling and disabling the hook
- ✔ Saving macros
- ➕ Creating macros for more than one extra keyboard
- ➕ Support for modifier keys (Ctrl, Shift, Alt)
- ➕ Support for double taps
- ➕ Maybe your ideas! Submit them as issues with the idea tag!
- ❌ Blocking Windows Key, Alt+Tab and State Keys (Caps Lock, Num Lock) because those are sent before RawInput gets anything
✔ = Implemented, ➕ = Scheduled implementation, ❌ = Most Likely not implementable
Here are the steps to build the project:
- Set the Target Platform to x64.
- Build the
NotEnoughHotkeys
Project - Build the
NEHSubprocess
twice, one time withConstants.NEHHOOKDLL
set toNEHKbdhook.dll
and one time with it set toNEHKbdhookAdmin.dll
. Rename the Administrator one toNEHSubprocessAdmin.exe
- Place both Subprocess Executables into a
bin
folder which is in the same path as theNotEnoughHotkeys.exe
. - Build the
NEH_KbdHook
Project and place the Dll files twice into thebin
folder, one asNEHKbdhook.dll
and the other asNEHKbdhookAdmin.dll
You can check the newest release to see the folder structure.
- Keystrokes are not blocked in Windows Search or in the Windows Explorer search textbox only.
- Applications that use Global-Keyboard-Hooks for their Hotkeys still get input. The workaround is to assign Keys like F24 to your hotkey and then send F24 over NotEnoughHotkeys
- Windows Key, Alt+Tab and State Keys (Caps Lock, Num Lock) cannot be blocked.
- Games hook the keyboard on a lower level, so the keys won't be blocked in games.
Icon made by Freepik from www.flaticon.com
Icon composition made by networkException, thanx for that
Good article on the topic: https://www.codeproject.com/Articles/716591/Combining-Raw-Input-and-keyboard-Hook-to-selective
More references:
https://www.codeproject.com/Articles/17123/Using-Raw-Input-from-C-to-handle-multiple-keyboard