如何通过批处理运行 Night Light?

如何通过批处理运行 Night Light?

我在 StackOverflow 上找到了一个关于此问题的讨论,但没有答案。

而且显然,他们不认为这是一个“基于编程”的问题(这就是我在这里问的原因。)

无论如何,我制作了一个批处理文件,用于检测您是否使用 Windows 10 - 现在我只需要知道如何使用批处理激活(和停用)夜灯[或者如果首先可能的话] - 位于显示设置后面的按钮。

我标记了“需要一些东西来激活它”因为我需要一些东西来激活它(就像我说的)。任何与控制台.cpl命令,或者只是一些完全不同的东西,都会有所帮助。——只要它直接激活/停用夜灯功能。

:nightlight
for /f "tokens=2 delims=," %%i in ('wmic os get caption^,version /format:csv') do set os=%%i
echo %os%|find " 10 ">nul &&goto win10||goto other
:win10
color 0a
echo Windows 10 Activating Night Light
*SOMETHING TO ACTIVATE IT* > nul
goto A

提前致谢。

答案1

通过注册表配置 Windows Creators Update Night Light

相关部分:
格式 4 个常量字节 - 似乎是所有 CloudStore 值共有的签名
设置的最后修改时间为 64 位 FILETIME 值(8 个字节,小端序)
另外 8 个常量字节
如果启用了蓝光减少功能,则字节 2 和 1;如果禁用,则字节消失

我对脚本很不擅长,但只需使用,但你只需要将数据更改为
HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\Cache\DefaultAccount\$$windows.data.bluelightreduction.settings\Current
02 01 或不更改,它就会打开或关闭设置。后面的痛苦在于要真正切换它,你必须解码该数据数组,检查是否启用或禁用并相应地设置值。祝你好运。

相关内容