需求
我想让 Windows 的主题能随着时间变化而改变,实现白天浅色主题,晚上深色主题的效果。
实现
使用第三方软件
这一类的软件有:Auto Dark Mode、DynaWin,等等。
但我不想安装额外的软件。
使用Power shell脚本
# 获取当前小时(24小时制)
$currentHour = (Get-Date).Hour
# 定义白天和夜晚的时间范围
# 浅色主题:例如 早上6点 到 晚上5点59分
# 深色主题:例如 晚上6点 到 早上5点59分
if ($currentHour -ge 6 -and $currentHour -lt 18) {
# 当前时间在白天范围内(6:00 - 17:59),切换到浅色主题
# Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name SystemUsesLightTheme -Value 1 -Force
Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name AppsUseLightTheme -Value 1 -Force
}
elseif ($currentHour -ge 18 -or $currentHour -lt 6) {
# 当前时间在夜晚范围内(18:00 - 次日5:59),切换到深色主题
# Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name SystemUsesLightTheme -Value 1 -Force
Set-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize -Name AppsUseLightTheme -Value 0 -Force
}
然后放到计划任务里即可。
