通过控制台更改Windows上的屏幕亮度 [英] Changing the screen brightness on Windows via the console

查看:26
本文介绍了通过控制台更改Windows上的屏幕亮度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为Windows10编写一个简单的控制台应用程序来改变屏幕亮度。最终,我希望将此应用程序与AutoHotKey一起使用,但这是次要的。

在研究这一点时,我找到的几乎所有东西都提到了Android,这并没有帮助。我确实找到了关于用C更改屏幕亮度的this Q&A,但不幸的是,这是针对Linux的。

This archived thread包含一个脚本,该脚本(虽然看起来很老套)给人留下了很好的印象-但它

已弃用,在许多[系统]上,它不会返回完整的亮度设置数组。因此,如果您应该有8个级别,IOCTL_VIDEO_QUERY_DISPLAY_BIGHTY将只返回6,或者根本不返回。(作者:jkiel,1)

所以我更喜欢使用WmiMonitorBrightness类(23)而不是IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS。它还提供了更精细的粒度,但我缺乏正确实现它的技能。

那么,如何在Windows 10上更改屏幕亮度?可能使用了前面提到的WmiMonitorBrightness类?我不介意它是C应用程序、AutoHotKey脚本或其他我可以从控制台控制的东西。

推荐答案

寻找一个solution,我找到了this software,它在Windows10上非常吸引我。开发人员提供了C#源代码和编译的应用程序here。"您需要安装Microsoft.NET框架2.0或更高版本才能运行应用程序。"

此外,它还支持全粒度的屏幕亮度设置。

若要使用控制台应用,允许使用以下参数:

  • 显示BrightnessConsole.exe 这将返回当前亮度级别。
  • DisplayBrightnessConsole.exe-get级别 这将返回显示器接受的所有可能的亮度级别,并以新行分隔。
  • DisplayBrightnessConsole.exe20(或其他一些亮度级别数字) 这会将显示器的亮度级别设置为给定的参数,在本例中为20。

该代码目前只能在单显示器系统上运行。如果您的系统有多个显示器,则它 只能在第一个(通常是主要的)显示器上工作。修改它以支持更多内容应该相当容易。


对使用Python的人可能有帮助-但在我的特定情况下没有帮助:

How can I detect brightness changes using Python and WMI on Windows 10?

这篇关于通过控制台更改Windows上的屏幕亮度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆