远程桌面:将 Ctrl-Alt-左箭头/Ctrl-Alt-右箭头发送到远程 PC

Fab*_*ied 52 windows remote-desktop keyboard-shortcuts

我需要使用组合键Ctrl- Alt-Left ArrowCtrl- Alt-Right Arrow在我的电脑上的应用程序。当我使用远程桌面连接到该计算机时,远程桌面客户端 (mstsc.exe) 或 RDP 服务器实现会吞下这些组合键。这些组合似乎保留给远程桌面,尽管它们似乎没有做任何事情。

有没有办法(支持或不支持)禁用此行为,以便将组合键发送到我的应用程序?

har*_*ymc 24

热键 Ctrl+ Alt+Left ArrowCtrl+ Alt+Right Arrow 是通过远程桌面客户端吃掉。它们唯一的作用是将您切换回主机。

看起来这是一些从未完全编程和完成的预期功能,但无法将其关闭。这些热键甚至没有被微软在其远程桌面服务快捷键的官方文档中列出 。

解决方案 1:使用 Microsoft Store 版本

可以在Microsoft 远程桌面的 Microsoft Store 中找到另一个版本的 RDP 。

这个版本没有这个半实现的功能,所以它可以毫无问题地通过这些热键。这已在 Windows 10 版本 1903 上得到验证。

解决方案 2:翻译客户端和服务器上的热键

此解决方案将使用 安装在客户端和服务器上的AutoHotkey,以:

  • 在客户端,将以上热键翻译成其他未被RDP拦截的
  • 在服务器上,将这些键转换回上述热键。

例如,您可以在客户端上使用以下 AutoHotkey 脚本将
Ctrl+ Alt+转换arrowCtrl+ Win+ arrow

;Send Ctrl+Win+Left when user types Ctrl+Alt+Left
^!Left::
send !#{Left}
return

;Send Ctrl+Win+Right when user types Ctrl+Alt+Right
^!Right::
send !#{Right}
return
Run Code Online (Sandbox Code Playgroud)

您可以在服务器上使用以下AutoHotkey的脚本转换
Ctrl+ Win+arrowCtrl+ Alt+ arrow

;Send Ctrl+Alt+Left when user types Ctrl+Win+Left
^#Left::
send !^{Left}
return

;Send Ctrl+Alt+Right when user types Ctrl+Win+Right
^#Right::
send !^{Right}
return
Run Code Online (Sandbox Code Playgroud)

如果需要,您可以使用#IfWin[Not]Active / #IfWin[Not]Exist的 AutoHotkey 命令将这些热键限制为特定的窗口或进程 。

  • Microsoft Store 的远程桌面不支持多显示器设置( (5认同)

小智 6

感谢海报和到目前为止的答案;这些帮助我解决了类似的问题:我在台式电脑的文本编辑器上有使用 的键盘快捷键Ctrl+Alt+...,我希望在远程访问机器时能够使用它们。

使用这个 AHK 脚本,我输入Win而不是,Alt我能够完成下面的注释命令。现在无论我使用哪台 PC 访问远程桌面 PC(即,在家或旅行时),我都可以使用我的快捷方式(Win 非常接近 Alt)。这是我的 AHK 脚本:

;Send Ctrl+Alt+Left keys when user types Ctrl+Win+Left
^#Left::
send !^{Left}
return

;Send Ctrl+Alt+Right keys when user types Ctrl+Win+Right
^#Right::
send !^{Right}
return

;Send Ctrl+Alt+Up keys when user types Ctrl+Win+Up
^#Up::
send !^{Up}
return

;Send Ctrl+Alt+Down keys when user types Ctrl+Win+Down
^#Down::
send !^{Down}
return

;Send Ctrl+Alt+Shift+Left keys when user types Ctrl+Win+Shift+Left
^#+Left::
send !^+{Left}
return

;Send Ctrl+Alt+Shift+Right keys when user types Ctrl+Win+Shift+Right
^#+Right::
send !^+{Right}
return

;Send Ctrl+Alt+Shift+Up keys when user types Ctrl+Win+Shift+Up
^#+Up::
send !^+{Up}
return

;Send Ctrl+Alt+Shift+Down keys when user types Ctrl+Win+Shift+Down
^#+Down::
send !^+{Down}
return
Run Code Online (Sandbox Code Playgroud)

请注意,我在远程桌面连接中使用“应用 Windows 组合键...在远程计算机上”,因此我在远程计算机上运行此脚本。

虽然可能有更有效的 AHK 方法来做到这一点,但上述方法对我有用。希望这对其他人也有帮助。