【问题标题】:how can i set the value of Minimum (Maximum) Processor state如何设置最小(最大)处理器状态的值
【发布时间】:2012-11-29 02:32:12
【问题描述】:

在Win7下,打开控制面板->电源选项->高级设置->处理器电源管理。

您可以看到最小处理器状态、最大处理器状态。 我已经使用 C# 通过 powercfg 命令获取了值。 现在,我想通过 C# 设置处理器状态的值。 例如旧值为 5%,执行程序,将值更新为 10%。 我已经搜索过powercfg帮助文档,没有这样的命令。

我怎样才能做到这一点?

【问题讨论】:

    标签: c# windows-7 power-management


    【解决方案1】:

    我只能建议使用 PInvoke 调用 WriteProcessorPwrSchemeWindows API Code Pack for .NET 有一些电源管理功能,但可能不是这个。

    【讨论】:

    • 谢谢你的帮助,刚才你说了,没有这个功能。
    • @ScoketJoe 我实际上说过有一个名为 WriteProcessorPwrScheme 的函数,您当然可以使用 PInvoke 从 C# 调用它。看看链接。
    • 哦,我以前做过,但是系统提到需要15个声望,我现在11。所以我没有权利这样做。
    • @ScoketJoe 谢谢,非常感谢。
    • 由于 SO 警察对我的实际回答有效.. 这些 PInvoke 调用有一个很棒的 .Net 包装器:github.com/dahall/vanara
    【解决方案2】:

    使用

    PowerWriteACValueIndex()/PowerWriteDCValueIndex()
    

    第一个参数为 NULL,第二个参数——所需电源方案的 GUID (GUID_MAX_POWER_SAVINGS/GUID_MIN_POWER_SAVINGS/GUID_TYPICAL_POWER_SAVINGS),第三个参数——GUID_PROCESSOR_SETTINGS_SUBGROUP,第四个参数——GUID_PROCESSOR_THROTTLE_MAXIMUM 或 GUID_PROCESSOR_THROTTLE_MINIMUM

    所有的 GUID 描述都可以在 winnt.h 中找到

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-07-06
      • 2012-08-04
      • 2019-02-10
      • 1970-01-01
      • 1970-01-01
      • 2015-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多