在屏幕保护程序上运行批处理/cmd

lag*_*lex 30 windows screensaver batch

有没有办法在屏幕保护程序启动时运行 .bat 或 .cmd?我注意到一些 .exe 可以运行,如果你将它们重命名为 .scr,但就是这样吗?

Kar*_*ran 29

1.屏幕启动器

Screen Launcher 允许您选择任何程序作为屏幕保护程序运行。您可以启动 Powerpoint、电影或任何 EXE 或相关文件。要安装,只需解压缩,右键单击并单击上下文菜单上的安装。然后,您可以像使用任何其他屏幕保护程序一样使用 Screen Launcher。要打开 Powerpoint 演示文稿等文件,您必须执行 powerpoint 程序并键入 ppt 的路径作为参数。显示图像的示例是 c:\winnt\system32\mspaint.exe c:\picture.bmp。立即下载以利用任何媒体作为屏幕保护程序。

1

[备用下载链接,因为官方网站似乎已死。]

2. RunSaver(不要与同一作者的RunScreenSaver混淆)。

运行命令的屏幕保护程序。

2

我相信还有更多这样的屏幕保护程序可以让您启动任意程序/脚本。但是,如果您想继续使用当前的屏幕保护程序怎么办?如果是这样,请参阅下面的解决方案(在 Win7 上测试,在 Vista+ 上应该可以正常工作)。


3.使用3第三方工具

  1. 事件 ID 4802对应于屏幕保护程序被调用,但默认情况下不会记录,因此我们需要先启用此事件的日志记录。因此,打开本地组策略编辑器(Start / Run / gpedit.msc),导航至:

    Computer Configuration / Windows Settings / Security Settings / Advanced Audit Policy Configuration / System Audit Policies - Local Group Policy Object / Logon/Logoff / Audit Other Logon/Logoff Events

    并启用成功失败的复选框:

    3

  2. 如果您等待启动屏幕保护程序,您现在将在Event Viewer 中看到类似于以下内容的事件日志:

    4

  3. 现在可以轻松地使用任务计划程序来创建将在事件 4802 发生时启动的任务。只需确保任务属性对话框的触发器选项卡如下所示:

    5
    6

  • 你值得一枚奖牌 (2认同)

Sop*_*rez 5

为了完成@Karan 的好回答,对于那些有兴趣在关闭屏幕保护程序时执行程序的人,该过程与他的“3. 不使用 3rd 方工具”解决方案中使用的过程相同,但事件ID 应该是 4803

(例如,在我的情况下,我想在屏幕保护程序启动时禁用 Aero(“net stop uxsms”),并在屏幕保护程序停止时重新启用它(“net start uxsms”