2010-03-15 48 views
7

Windows爲CPU電源管理提供了哪些API(我對CPU頻率縮放感興趣,設置最小和最大CPU頻率 - 類似於在電源計劃中可以在控制面板中執行的操作,但以編程方式)。我也對.Net API感興趣。 (這不是我打算在生產環境中使用的東西,而是作爲某些動態電源管理算法的概念證明)Windows - CPU電源管理API

回答

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. 
    } 
} 

你可以找到很多更受該命名空間中閒逛。