我想通过计划任务为固定本地用户启用/禁用屏幕保护程序。我的任务运行
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /f /v ScreenSaverIsSecure /t REG_SZ /d 0
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /f /v ScreenSaveActive /t REG_SZ /d 0
并且有一个相应的“启用”任务,最后是 1 而不是 0。
任务按计划运行,我也可以手动运行它。在这两种情况下,我都可以通过注册表编辑器检查注册表中的两个键是否都已更改。但屏保设置不会改变。
我已通过打开“屏幕保护程序设置”对话框并在那里进行更改来确认我正在查看正确的设置。每当我进行更改时,我都可以立即在注册表中看到更改。但是如果我在注册表中更改上面的两个键,无论是手动还是通过脚本,当我重新打开“屏幕保护程序设置”对话框时,设置都没有改变。
在第一个屏幕截图中,我首先将“ScreenSaveActive”和“ScreenSaverIsSecur”这两个键更改为 0,然后打开屏幕保护程序设置对话框:
在第二个屏幕截图中,我取消选择并重新选择“在恢复时,显示登录屏幕”(这样即使我没有更改任何内容,也会应用更改)并按下“应用”。可以看出键已经改变:
可以看出,我正在修改正确的键,但如果直接在注册表中进行更改,则屏幕保护程序看不到这些更改。是否有其他地方保存屏幕保护程序的设置,以及屏幕保护程序从哪里读取它们?