How do I use the SetSystemPowerState() API in my application?
If the Power Manager is actively managing system power, applications should not use this API except to suspend the system. To suspend the system, call SetSystemPowerState(NULL, POWER_STATE_SUSPEND, 0). This API is provided to allow OEMs to implement system power state transition code outside of the Power Manager. The default Power Manager implementation will not allow applications to initiate arbitrary system power state transitions.