我正在编写一个可以根据用户输入更改屏幕亮度的代码,但这是基于当前屏幕亮度的。是否可以从命令提示符处以整数形式获取屏幕亮度?
过去,我曾尝试通过使用cmd中的Power Config实用程序来执行此操作,但是它失败了。我尝试查找它,但没有为Windows找到任何东西。我找到的最接近的解决方案是针对IOS和Android。
尝试以下操作后迷路了:
C:\Users\[me]>powercfg /q | find "(Display brightness)"
Power Setting GUID: aded5e82-b909-4619-9949-f5d71dac0bcb (Display brightness)
C:\Users\[me]>
我希望返回“ 45”或“ 45%”之类的屏幕亮度值,但它却给了我一个显示ID。我该怎么办?
答案 0 :(得分:2)
查询屏幕亮度
powershell -Command "Get-Ciminstance -Namespace root/WMI -ClassName WmiMonitorBrightness | Select -ExpandProperty "CurrentBrightness""
更改屏幕亮度
powershell -Command "(Get-WmiObject -Namespace root/WMI -Class WmiMonitorBrightnessMethods).WmiSetBrightness(1,<YOUR_BRIGHTNESS_INTEGER>)"
答案 1 :(得分:0)
你很近。这是您的操作方式。
powercfg的格式为:
POWERCFG -SETDCVALUEINDEX <SCHEME_GUID> <SUBGROUP_GUID> <SETTING_GUID> value
要查找您的信息:
对于<SCHEME_GUID>
:
powercfg /q | findstr Scheme
Power Scheme GUID: a3e508ca-5ab1-4c55-bee1-9edfb71ba0a4 (HP Optimized (recommended))
对于<SUBGROUP_GUID>
和<SETTING_GUID>
:
powercfg /q | findstr Display
Subgroup GUID: 7516b95f-f776-4464-8c53-06167f40ca19 (Display)
Power Setting GUID: aded5e82-b909-4619-9949-f5d31dac0bcb (Display brightness)
现在有了GUID值和亮度百分比-可以说 23%-像这样:
powercfg -SetDcValueIndex a3e508ca-5ab1-4c55-bee1-9edfb71ba0a4 7516b95f-f776-4464-8c53-06167f40ca19 aded5e82-b909-4619-9949-f5d31dac0bcb 23
编辑:要查看当前的水平,请执行以下操作:
使用GUID
检查您当前的设置:aded5e82-b909-4619-9949-f5d71dac0bcb
只需让powercfg /q > current_settings.txt
。将输出保存到current_settings.txt
文件中,然后在其中搜索aded5e82-b909-4619-9949-f5d71dac0bcb
。
例如我的:
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: 0x00000046
Current DC Power Setting Index: 0x00000032
该值表示百分比(%)。可以增加1%(如您所见)。