SetSystemPowerState (coredll)
Last changed: -80.138.195.32

.
Summary
Controls the overall device power state

C# Signature:

[DllImport("coredll.dll", SetLastError=true)]
static extern TODO SetSystemPowerState(TODO);

VB Signature:

    Declare Function SetSystemPowerState Lib "Coredll" ( _
    ByVal psState As String, _
    ByVal StateFlags As Integer, _
    ByVal Options As Integer) As Integer

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

May be more effective at forcing the device off than holding it on.

Tips & Tricks:

Please add some!

Sample Code:

    Const POWER_STATE_ON As Integer = &H10000
    Const POWER_STATE_OFF As Integer = &H20000
    Const POWER_STATE_SUSPEND As Integer = &H200000
    Const POWER_FORCE As Integer = 4096

    Public Sub ForcePower()
    SetSystemPowerState(Nothing, POWER_STATE_ON, POWER_FORCE)
    End Sub

Documentation