Windows为CPU电源管理提供了哪些API(我对CPU频率调整感兴趣,设置最小和最大CPU频率 - 类似于您在电源计划中可以在控制面板中执行的操作,但是采用编程方式)。我也对.Net API感兴趣。 (这不是我打算在生产环境中使用的东西,而是一些动态电源管理算法的概念证明)
答案 0 :(得分:5)
C ++电源管理API:http://msdn.microsoft.com/en-us/library/aa373170.aspx
.NET电源管理API位于Microsoft.Win32
命名空间中。
来自http://msdn.microsoft.com/en-us/library/hxkc1kwd.aspx的示例:
private void powerModeChanged(System.Object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
{
int si = SystemInformation.PowerStatus;
switch (si)
{
case BatteryChargeStatus.Low:
MessageBox.Show("Battery is running low", MessageBoxIcon.Exclamation);
case BatteryChargeStatus.Low:
MessageBox.Show("Battery is critically low", MessageBoxIcon.Stop);
Default:
// Battery is okay.
}
}
您可以通过在该命名空间中进行搜索来找到更多内容。
答案 1 :(得分:2)
您是否尝试过挖掘power-management API?
答案 2 :(得分:1)
您检查过WMI方式吗? Win32_Processor类提供了许多信息,如LoadPercentage,PowerManagementCapabilities ......
http://msdn.microsoft.com/en-us/library/aa394373%28VS.85%29.aspx
WMI参考:http://msdn.microsoft.com/en-us/library/aa394572%28VS.85%29.aspx