Note: This example is intended to be compiled with GCC or Clang toolchain. I'am using MSYS2.
Tested on:
- Windows XP 64 (5.2.3790)
- Windows 11 Pro 64 (10.0.22000.1696)
In order to communicate with driver, first you need to register driver in system. Before registering it, you need to sign it with valid certificate or sign it with any test certificate and boot Windows in 'testsigning' mode.
To enable test-signing mode, run following command as Administrator and reboot your PC (note: you also need to disable Secure Boot in BIOS if it's enabled):
bcdedit.exe -set TESTSIGNING ON
To disable test-signing, use:
bcdedit.exe -set TESTSIGNING OFF
Registering driver with Service Control Manager also needs Administrator rights.
After registering and starting driver, you can communicate with it.
You can view debug messages from kernel driver with DebugView tool by Mark Russinovich.