In the previous tip we illustrated that while it is hard to directly access the Windows Power Management API, there are other API calls that can do this for you. Here is a chunk of code that lets you shut down a Windows system to a desired power management state, i.e. you can hibernate it and put it into a no-energy-consumption state:
# use the built-in pwmgmt support in Windows Forms Add-Type -AssemblyName System.Windows.Forms # define the power status you want to enable $PowerState = [System.Windows.Forms.PowerState]::Hibernate # allow or refuse force to be applied $Force = $false # turn off wake off capabilities as well $DisableWake = $false # apply the setting: [System.Windows.Forms.Application]::SetSuspendState($PowerState, $Force, $DisableWake)