We have a software for many years that among many features has the ability to blank the local monitor.
We did that was using a kernel driver for monitors with a user-defined IOCTL messages to force the monitor to power OFF and power ON.
In our driver's Dispatch Power function the transition from D0 to a low-power D3 state, and vice-versa, occurred by calling the PoRequestPowerIrp sending a power IRP (IRP_MN_SET_POWER).
The above method has been working for many years until the last 1-2 years when newer display adapters would no longer blank the screen even though no error was returned by the driver in the above operations.
The project is to find a new way to programmatically blank the monitor. Would anyone has any knowledge in this area? E.g. Knowing how the Windows ACPI driver interfaces with the display driver during transition from state D0 to D3 and vice-versa.