结束远程桌面会话和待机


2

我已经在计算机上设置了远程访问(通过RDP的Windows 7 Pro x64)。[WOL]局域网唤醒功能已经在起作用,因此我可以将其从睡眠状态唤醒。当我结束远程桌面会话(start-menu-> logout)时,计算机只会停留在登录屏幕上,并且不会重新进入睡眠状态。

我想要一个批处理文件(或实际上是什么文件,可以从远程PC执行该批处理文件以1.结束(断开连接或注销) RDP会话并使2.PC进入睡眠状态(不必注销用户)

我尝试设置Windows任务,使用户注销(无法工作)后30秒钟使计算机进入睡眠状态。我已经尝试使用一个批处理文件使其进入睡眠状态,但是会话一直在运行,并且我无法执行任何操作,因此不得不硬启动PC。

Answers:


1

结束RemoteDesktop会话和待机

创建一个批处理文件(或真正的东西),我可以从我的远程PC激活该文件以结束会话并使PC进入睡眠状态(不必注销用户)


以下是两个示例脚本:

  1. LOGOFF; 和,
  2. 另一个带有RDP DISCONNECT(无注销)

我不确定您是否想要一个,所以我将两者都放在下面,从我测试的结果来看,它在Windows 7中应该可以正常工作。

对于注销脚本,我将一些if逻辑用于不注销控制台,系统或rdp-tpc侦听会话,因为您仅对RDP连接的远程会话感兴趣。

对于断开连接脚本,您将只断开根据需要运行该会话的会话,因此不需要在此脚本上附加逻辑(这可能是您需要的逻辑

假设您将手动将其作为已保存的批处理脚本运行,并且如果您决定使用注销脚本而不是断开连接脚本,则您将有权注销所有或任何适用的会话。


批处理脚本

(此脚本还将在断开当前会话后等待5秒钟,然后将PC置于睡眠状态。)

批处理脚本示例(DISCONNECT所有会话)

@ECHO OFF

::: Disconnected current RDP session
TSDISCON 

::: Pause 5seconds before going to sleep ensuring enough time 
PING -n 5 127.0.0.1 > NUL

::: Put computer to sleep
%systemroot%\System32\rundll32.exe powrprof.dll,SetSuspendState 0,1,0

GOTO EOF

(此脚本还将在注销所有会话后等待30秒,然后使PC进入睡眠状态。)

警告: 双击此批处理文件以专门满足OP的需要,将无法临时运行此脚本,但我将其保留为赠品,以防其他人发现使用它。由于它将在睡眠逻辑运行之前注销帐户,因此该睡眠逻辑在特定情况下将不起作用。这将需要从Task Scheduler运行with Highest Privileges,并且Run whether the user is logged on or not-我以为您可以以这种方式进行设置,而不是按时间表进行设置,也可以根据需要从Task Scheduler开始/运行。(下面的屏幕截图)

批处理脚本示例(LOGOFF所有会话)

@ECHO OFF

FOR /F %%S IN (

    '"QUERY SESSION /SM"'

) DO (

IF NOT %%~S==0 IF NOT %%~S==1 IF NOT %%~S==65536 RWINSTA %%~S

)

::: Pause 5 seconds before going to sleep ensuring enough time 
PING -n 5 127.0.0.1 > NUL

::: Put computer to sleep
%systemroot%\System32\rundll32.exe powrprof.dll,SetSuspendState 0,1,0

GOTO EOF

屏幕快照预定任务选项

在此处输入图片说明


进一步的研究,阅读和资料


第二种方法不起作用,因为它在注销后终止了脚本(至少我认为那是发生了什么)。但是,第一个工作就像一种魅力,谢谢!
Niphram '16

我也喜欢您使用ping等待5秒的方式,这是绝对不可能的:-)
Niphram '16

0

请尝试以下操作:在RDP会话中单击桌面上的空白点,然后按Alt + F4。您将获得旧的“电源”菜单,然后可以从那里强制计算机进入睡眠状态,这当然也会断开RDP。


我不知道,谢谢。但是我问自己为什么睡眠选项在那里而不是正常位置。
Niphram '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.