问答

求C#版调节屏幕亮度的系统函数SetMonitorBrightness(位于Dxva2.

作者:admin 2021-05-12 我要评论

如题,谢谢大家。 ### SetMonitorBrightness 现成的封装在这里: WPF 修改屏幕亮度 (lindexi.com) 我总结了三种.Net修改windows亮度的办法 使用 Dxva2.dll Dxva...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

如题,谢谢大家。

###

SetMonitorBrightness 现成的封装在这里:WPF 修改屏幕亮度 (lindexi.com)

我总结了三种.Net修改windows亮度的办法

  1. 使用 Dxva2.dll

    Dxva的效果是调整显示器内置亮度,一般是支持显示器,所以笔记本可能就不支持这种方法。

  2. 使用 gdi32.dll

    使用这个方法修改亮度实际上是在调整伽马值,虽然调整伽马会导致色彩偏,但确实是降低了亮度。这似乎属于英特尔驱动色彩管理,理应基本所有电脑都支持这种方法把。
    我在dotnet5 下VS提示我需要引入 System.Drawing.Common 5.0.x 这个包

  3. 使用WMI,System.Management 模块

    这种方法调整亮度,和笔记本、win平板上自带的亮度调整是一摸一样的,相当于改系统设置里的亮度,调整亮度时左上角会有亮度弹窗。所以只有显示器的主机设备应该是不支持的。
    这种方法 + 第二种方法可以让屏幕亮度做到很低。
    同上,需要引入 System.Management

详情代码请看 https://github.com/luojunyuan...

在MainWindow的code-behind中有一点点使用示例,因为代码不长建议看看 AdjustScreenBuilder.cs 的实现之后再使用。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 求C#版调节屏幕亮度的系统函数SetMonit

    求C#版调节屏幕亮度的系统函数SetMonit

  • 盒子A中有一个img,当A的宽度大于高度

    盒子A中有一个img,当A的宽度大于高度

  • 微信小程序 swiper-item中嵌套scroll还

    微信小程序 swiper-item中嵌套scroll还

  • Vue项目无法在IE中运行,已安装babel

    Vue项目无法在IE中运行,已安装babel

腾讯云代理商
海外云服务器