[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
struct USER_POWER_POLICY {
public uint Revision;
public POWER_ACTION_POLICY IdleAc;
public POWER_ACTION_POLICY IdleDc;
public uint IdleTimeoutAc;
public uint IdleTimeoutDc;
public byte IdleSensitivityAc;
public byte IdleSensitivityDc;
public byte ThrottlePolicyAc;
public byte ThrottlePolicyDc;
public SYSTEM_POWER_STATE MaxSleepAc;
public SYSTEM_POWER_STATE MaxSleepDc;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
public uint[] Reserved;
public uint VideoTimeoutAc;
public uint VideoTimeoutDc;
public uint SpindownTimeoutAc;
public uint SpindownTimeoutDc;
[MarshalAs(UnmanagedType.I1)]
public bool OptimizeForPowerAc;
[MarshalAs(UnmanagedType.I1)]
public bool OptimizeForPowerDc;
public byte FanThrottleToleranceAc;
public byte FanThrottleToleranceDc;
public byte ForcedThrottleAc;
public byte ForcedThrottleDc;
}
Structure USER_POWER_POLICY
Public Revision As UInteger
Public IdleAc As POWER_ACTION_POLICY
Public IdleDc As POWER_ACTION_POLICY
Public IdleTimeoutAc As UInteger
Public IdleTimeoutDc As UInteger
Public IdleSensitivityAc As Byte
Public IdleSensitivityDc As Byte
Public ThrottlePolicyAc As Byte
Public ThrottlePolicyDc As Byte
Public MaxSleepAc As SYSTEM_POWER_STATE
Public MaxSleepDc As SYSTEM_POWER_STATE
<MarshalAs(UnmanagedType.ByValArray, SizeConst:=2)> _
Public Reserved As UInteger()
Public VideoTimeoutAc As UInteger
Public VideoTimeoutDc As UInteger
Public SpindownTimeoutAc As UInteger
Public SpindownTimeoutDc As UInteger
<MarshalAs(UnmanagedType.I1)> _
Public OptimizeForPowerAc As Boolean
<MarshalAs(UnmanagedType.I1)> _
Public OptimizeForPowerDc As Boolean
Public FanThrottleToleranceAc As Byte
Public FanThrottleToleranceDc As Byte
Public ForcedThrottleAc As Byte
Public ForcedThrottleDc As Byte
End Structure
None.
None.