【问题标题】:How to prevent Windows 10 lock screen during batch processing?如何在批处理过程中防止 Windows 10 锁屏?
【发布时间】:2016-02-18 10:02:47
【问题描述】:

如何在 Windows 10 上长时间处理批处理文件时防止锁屏?

我找不到任何用于批处理文件(命令行)的命令。

【问题讨论】:

    标签: batch-file lockscreen


    【解决方案1】:

    AFAIK 无法从批处理本身执行此操作。不幸的是,只能通过发送鼠标或键盘事件来防止锁屏出现。如果不涉及 VS-Script 或 Powershell 等其他工具,Batch 无法模拟此类事件。

    我会采用this PowerShell 脚本。它将阻止锁定屏幕达到所需的持续时间。

    您可以将批处理代码完全转换为 PowerShell,或者在开始实际工作之前从批处理中启动 ps1 脚本。

    【讨论】:

    • 我会尝试 prevent-screensaver 并在开始之前将其粘贴到批处理中。
    • 脚本中有很多代码要运行。它虽然有效:[code](PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""Prevent-Screensaver.ps1""' -Verb RunAs}")
    【解决方案2】:

    将此命令粘贴到您选择的文本编辑器中,并以.bat 文件扩展名保存。然后只需运行此批处理文件以防止 Windows 锁定您的屏幕。

    powercfg /change standby-timeout-dc 0
    powercfg /change standby-timeout-ac 0
    powercfg /change monitor-timeout-dc 0
    powercfg /change monitor-timeout-ac 0
    powercfg /change hibernate-timeout-dc 0
    powercfg /change hibernate-timeout-ac 0
    

    【讨论】:

      【解决方案3】:

      给你

      set wsc = CreateObject("WScript.Shell")
      Do
          'Five minutes
          WScript.Sleep(5*60*1000)
          wsc.SendKeys("{F13}")
      Loop
      

      这将每 5 分钟按一下键盘上的 F13...由于您的键盘上没有 F13,因此它实际上没有其他效果,但可以防止屏幕锁定。

      *Caveat - 如果你使用 bash,它会在你使用它时键入 ~。这就像在使用 bash 时按 F12。有时很烦人。

      【讨论】:

        【解决方案4】:

        最简单的方法是在启动批处理之前手动禁用屏幕保护程序。

        【讨论】:

        • 这意味着每次运行一个批次之前都需要做大量的工作。是否至少有一个命令可以在批处理完成时启动,例如“关闭”命令?
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多