【问题标题】:How to prevent remote desktop from being idle?如何防止远程桌面空闲?
【发布时间】:2017-11-18 23:46:51
【问题描述】:

我正在使用远程桌面连接登录 Windows Server。如果空闲几分钟,远程桌面会自动锁定,并且远程桌面上的所有进程都停止。有什么办法可以防止远程桌面空闲?

我编写了一个 shell 脚本,它每 6 秒自动按下 numlock 键。

Dim objResult

Set objShell = WScript.CreateObject("WScript.Shell")    
i = 0

Do While i = 0
  objResult = objShell.sendkeys("{NUMLOCK}{NUMLOCK}")
  Wscript.Sleep (6000)
Loop   

但问题是这段代码不起作用并且运行了无限时间。我们可以限制它1-2小时吗?有没有其他办法?

【问题讨论】:

  • 我们可以写一个脚本每隔几分钟自动移动鼠标吗?

标签: shell vbscript scripting


【解决方案1】:

杀死脚本(CMD 文件)

tasklist /FO TABLE /NH | findstr /I "PID script.exe" > c:\temp\kill_vbs.txt

for /F "eol=; tokens=2,3* delims= " %%i in (c:\temp\kill_vbs.txt) do taskkill /F /PID %%i

【讨论】:

    【解决方案2】:

    将其限制为在循环中运行 1 小时增量“i”并仅运行 600 次。 (1h = 3600s / 6s --> 600次)

    Do While i < 600
      objResult = objShell.sendkeys("{NUMLOCK}{NUMLOCK}")
      Wscript.Sleep (6000)
      i = i + 1
    Loop  
    

    但是为什么不把你的服务器配置为不自动锁定呢?

    【讨论】:

    • 嗨 MatSnow,感谢您的回复。实际上,系统管理员已禁用显示设置控制面板的启动。所以我无法修改更改。
    猜你喜欢
    • 1970-01-01
    • 2017-03-26
    • 2010-09-06
    • 2011-09-12
    • 2022-01-19
    • 2019-08-27
    • 1970-01-01
    相关资源
    最近更新 更多