如何将远程桌面会话恢复到本地控制台?

gle*_*eff 17 desktop remote-desktop console shortcuts

完成远程桌面连接后,我希望能够将远程桌面恢复到本地控制台,这样用户就不必重新输入密码并重新登录。

如何创建桌面快捷方式来执行此操作?

gle*_*eff 16

  1. 通过右键单击桌面并选择新建来创建桌面快捷方式,然后选择快捷方式。
  2. 在文本字段中输入:

    %windir%\System32\tscon.exe 0 /dest:console (见下文)

  3. 右键单击新创建的快捷方式,单击属性。
  4. 单击快捷方式选项卡,然后单击高级按钮。
  5. 选中“以管理员身份运行”框,然后单击“确定”。

如果这不起作用,请尝试将tscon.exe 0 /dest...步骤 2 中的数字零 ( )更改为数字1,如果它不起作用,请继续增加它,直到您的远程桌面被释放。

或者,打开一个带有开始菜单、运行、cmd. 键入qwinsta Enter,然后查找处于活动状态的会话的 ID(它将>在其会话名称的开头有一个字符)。这是您需要在步骤 2 中使用的号码。

当您要恢复控制台桌面时,只需双击快捷方式并允许管理员访问即可。


小智 8

这是一个避免依赖于 GNU 工具的版本。它使用 Windows 附带的 findstr。

for /f %%i in ('qwinsta ^| findstr /C:">rdp-tcp#"') do set RDP_SESSION=%%i
:: Strip the >
set RDP_SESSION=%RDP_SESSION:>=%
tscon %RDP_SESSION% /dest:console
Run Code Online (Sandbox Code Playgroud)

  • 这是我的版本,为了方便快捷方式优化为单行:`%windir%\system32\cmd.exe /c "for /F "tokens=1 delims=^> " %i in ('" "%windir%\system32\qwinsta.exe" | "%windir%\system32\find.exe" /I "^>rdp-tcp#""') 做 "%windir%\system32\tscon.exe" %i /dest:console"` 它用额外的 `for` 解析技巧替换了 `>` 环境变量替换,并添加了 `cmd` 选项(用于快捷方式)。当与适当的图标结合使用时(我使用了`Shell32.dll` 中的注销图标),它会类似于 [this](http://i.stack.imgur.com/YZAQo.png)。 (7认同)