如何在锁定计算机后立即打开屏幕保护程序?

如何在锁定计算机后立即打开屏幕保护程序?

我正在寻找一种方法来立即打开屏幕保护程序,或者关闭屏幕,无论是在我锁定屏幕(WIN-L)时还是通过单击桌面上的某个内容。

我已经找到监控系统作为一种可能的解决方案,但它似乎有些过时了,我担心它对 Windows 10 的支持不是特别好,因为它已经有一段时间没有更新了。它也不支持我选择的媒体播放器(星光播放器)。

关于如何通过 Windows 设置/快捷方式或其他方式执行此操作,有什么想法/建议吗?

答案1

内置屏幕保护程序应位于%windir%\SysWOW64文件夹中(例如,,Mystify.scr)。您可以添加运行其中一个文件的 Windows 快捷方式。您还可以添加快捷键。Ribbons.scrscrnsave.scr

答案2

回答:

我有两个不同的工具https://gist.github.com/RichardBronosky/c61465ed897c2f10e9bf16704d1d9af9

为了使这成为一个合法的SO答案,我将包括一个更简单的答案:

#!/bin/bash
# From: https://gist.github.com/RichardBronosky/c61465ed897c2f10e9bf16704d1d9af9
# This works from both WSL/bash and powershell!

powershell.exe -command "& (Get-ItemProperty 'HKCU:Control Panel\Desktop').{SCRNSAVE.EXE}"

这将得到价值[名字很差劲] SCRNSAVE.EXE 财产从注册表中。该值恰好是文件的完整路径*.scr,因此您可以(而且我确实这样做了)告诉 powershell 将其作为命令运行。

注释/意见:

这是一个非常简洁的演示,说明了 powershell 如何返回对象(包括方法、访问器等)而不是像 bash 那样的文本流。

在这里,Get-ItemProperty返回一个具有许多属性的对象 [类型:System.Management.Automation.PSCustomObject]。我们使用方便的点符号访问单个属性。(我必须承认,尽管我可以直接将 sed 写入脚本而无需在 CLI 上测试它,但这样做确实更好。)有一个用于探索对象的有用工具由 Microsoft Technet 博主推荐。不幸的是,安装它现在需要选项-AllowClobber。 (点击此处了解更多信息)一个稍微不太方便的[扁平]替代方案是Get-Member. (只需将输出通过管道传输给它即可。)

凭借四分之一世纪的 bash 经验,powershell 非常奇怪,但使用起来也有点新鲜。只要把它想象成在更 Python 环境中编写的 shell 脚本,它就不可怕了……除了那些反斜杠。

答案3

这个开源应用程序添加热点角,您可以使用“锁定”选项设置其中一个。该网站非常简约,但该应用程序在 Windows 10 和多台显示器上运行良好。

最后一个版本缺少一个功能,即让监视器进入休眠状态而不是锁定。如果您需要此功能,可以编译来源你自己。

答案4

结合简易视频屏幕保护程序无法调用 .scr 文件。因此我的方法使用自动热键解释器使用这样的脚本:

sc045::                                                 ; the pause/brake key on keyboard (change sc045 to #L for Win+L)
    Sleep, 300                                          ; delay to prevent unintentional action stop
    SendMessage, 0x112, 0xF140, 0,, Program Manager     ; 0x112 is WM_SYSCOMMAND -- 0xF140 is SC_SCREENSAVE
Return

sc045键盘快捷键可以替换Win+L#L

屏幕保护程序必须启用“恢复时显示登录屏幕”屏幕保护程序配置对话框。另外,值得指出的是屏幕保护程序宽限期默认设置为 5 秒(可以在注册表中更改)。

相关内容