我可以通过Windows命令提示符强制更大的屏幕亮度吗


13

我有一台Sony Vaio笔记本电脑,它运行Windows7。我知道我可以从控制面板调整屏幕亮度,但是我想强制使其亮度更高。是否有hack或从命令提示符执行此操作的方法?


您的Fn + <键>亮度控件不起作用吗?
kobaltz 2012年

有一个powercfg命令可让您更改亮度指数的值,但是它用于特定主题(例如-SETACVALUEINDEX,在插入计算机时使用Ex。)。我不相信这就是您要寻找的东西
罗布(Rob)

我想没有任何参数用于powercfg.cpl...好问题+1。我想知道通过命令提示符调整风扇速度的方法是否相同。
罗布

您的标题似乎在询问说明中是否提出了另一个问题-如果您只是想增加屏幕亮度,这里有一个针对Sony笔记本电脑的破解程序,但我不确定这是否行得通forum.notebookreview.com/索尼/…
戴夫

我将使用类似Process Monitor的工具,并查看使用控制面板小程序时是否更改了任何注册表设置。然后,您可以reg从命令行使用它来读取/设置注册表项
SeanC 2012年

Answers:


16

好的,这就是我所做的:

用于设置任何电源设置的两个命令是powercfg -SetDcValueIndexpowercfg -SetAcValueIndex,具体取决于您是要使用电池还是使用交流电源来更改设置。此命令的格式(不区分大小写):

POWERCFG -SETDCVALUEINDEX <SCHEME_GUID> <SUBGROUP_GUID> <SETTING_GUID> value

然后,我们需要三个GUID。通过运行找到它们powercfg -q。输出看起来像这样(将以您系统的语言显示):

D:\Users\212579988>powercfg /q
Power Scheme GUID: 381b4222-f694-41f0-9685-ff5bb260df2e  (Balanced)
  Subgroup GUID: fea3413e-7e05-4911-9a71-700331f1c294  (Settings belonging to no subgroup)
    Power Setting GUID: 0e796bdb-100d-47d6-a2d5-f7d2daa51f51  (Require a password on wakeup)
      Possible Setting Index: 000
      Possible Setting Friendly Name: No
      Possible Setting Index: 001
      Possible Setting Friendly Name: Yes
    Current AC Power Setting Index: 0x00000001
    Current DC Power Setting Index: 0x00000001

  Subgroup GUID: 0012ee47-9041-4b5d-9b77-535fba8b1442  (Hard disk)
    Power Setting GUID: 6738e2c4-e8a5-4a42-b16a-e040e769756e  (Turn off hard disk after)
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0xffffffff
      Possible Settings increment: 0x00000001
      Possible Settings units: Seconds
    Current AC Power Setting Index: 0x00000000
    Current DC Power Setting Index: 0x00000000

...

  Subgroup GUID: 7516b95f-f776-4464-8c53-06167f40cc99  (Display)
    Power Setting GUID: 17aaa29b-8b43-4b94-aafe-35f64daaf1ee  (Dim display after)
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0xffffffff
      Possible Settings increment: 0x00000001
      Possible Settings units: Seconds
    Current AC Power Setting Index: 0x0000012c
    Current DC Power Setting Index: 0x00000078

    Power Setting GUID: 3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e  (Turn off display after)
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0xffffffff
      Possible Settings increment: 0x00000001
      Possible Settings units: Seconds
    Current AC Power Setting Index: 0x00000258
    Current DC Power Setting Index: 0x0000012c

    Power Setting GUID: aded5e82-b909-4619-9949-f5d71dac0bcb  (Display brightness)
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0x00000064
      Possible Settings increment: 0x00000001
      Possible Settings units: %
    Current AC Power Setting Index: 0x00000064
    Current DC Power Setting Index: 0x0000000c

...

现在您需要查找并写下:

  • 当前方案GUID-在第一行。
  • 子组GUID for Display-向下查找 Display
  • 设置GUID的亮度-向下看 Display Brightness

现在,将您的三个GUID值加上所需的亮度百分比-假设为10%-像这样:

C:\Users\Mike>powercfg -SetDcValueIndex 381b4222-f694-41f0-9685-ff5bb260df2e 7516b95f-f776-4464-8c53-06167f40cc99 aded5e82-b909-4619-9949-f5d71dac0bcb 10 

而且...对我来说什么都没有发生!亮度没有改变!通过执行,powercfg /q我检查了我的新值确实存储正确。因此,我只是要求将电源设置激活(即使一直处于激活状态):

C:\Users\Mike>powercfg -S 381b4222-f694-41f0-9685-ff5bb260df2e

瞧!我的屏幕亮度调暗到10%!


不错的第一篇文章!
slm 2012年

3
很棒的帖子在这里。需要说明的是:对于英语,将当前方案称为Power Scheme,将屏幕设置的子组GUID标记为Display,将亮度的设置GUID标记为Display brightness。以下命令将为您获取所有必需的数据:powercfg -q | find "Power Scheme GUID" & powercfg -q | find "(Display)" & powercfg -q | find "(Display brightness)"
Iszi 2013年

我试过了,但是没有用。可能需要从提升的命令提示符下运行它吗?
Iszi 2013年

我想我已经解决了我的问题。如果您的设置被GPO锁定,则此方法似乎无法使用。
Iszi 2013年

3
在Windows 7和更高版本上,大多数GUIDS都有别名,您可以使用/Query帖子中所示的选项并查找友好名称。您还可以使用/Aliases它在一个漂亮的分层表中列出大多数别名。不幸的是,亮度没有别名,只有视频子部分没有别名。内置方案也有友好的名称,最著名的是当前活动方案SCHEME_CURRENT,以及所有方案SCHEME_ALL(未记录?)。因此,上面的命令变为:powercfg -setdcvalueindex SCHEME_CURRENT SUB_VIDEO aded5e82-b909-4619-9949-f5d71dac0bcb 10
nohwnd

9

我使用上述方法制作了一个适用于英语的批处理文件。 http://aarongiera.com/change_brightness.bat

for /f "tokens=*" %%i in ('powercfg -q ^| find "Power Scheme GUID"') do set pwrSchm=%%i
set pwrSchm=%pwrSchm:~19,36%

for /f "tokens=*" %%i in ('powercfg -q ^| find "(Display)"') do set dsply=%%i
set dsply=%dsply:~15,36%

for /f "tokens=*" %%i in ('powercfg -q ^| find "(Display brightness)"') do set brtnss=%%i
set brtnss=%brtnss:~20,36%

set /P brightness=Enter % brightness:  %=%

powercfg -SetDcValueIndex %pwrSchm% %dsply% %brtnss% %brightness%
powercfg -S %pwrSchm%

它有效,但只能在0-100的范围内。LED不能令人失望地降低或提高亮度。


您好@ user2089636,请您可以在OneDrive或Mega或其他共享的服务器上共享蝙蝠吗?您发布的链接已过期(您的网站处于离线状态)
Mirko Cianfarani

该设置专门用于笔记本电脑使用电池时的设置:-SetDcValueIndex而不是-SetAcValueIndex(使用适配器电源)。以下是为当前情况选择值的方法:set AcDc=Dc WMIC /NameSpace:\\root\WMI Path BatteryStatus Get PowerOnline | find /i "true" > nul && set AcDc=Ac powercfg -Set%AcDc%ValueIndex SCHEME_CURRENT SUB_VIDEO %brtnss% %brightness%
亚历山大·盖布赫
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.