如何处理 Windows 服务器上断开连接的用户的鼠标事件

问题描述 投票:0回答:2

我制作了一个机器人应用程序,它可以在另一个应用程序中移动并单击鼠标。 我想在远程桌面中打开的用户中运行这个机器人,但是当我最小化远程桌面或关闭它时,机器人无法更改鼠标位置或单击它。 请教我解决办法吗?

c# windows windows-server-2008-r2 remote-desktop interrupt-handling
2个回答
1
投票

此注册表项设置无论如何都会发送 GUI 输出:

HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\RemoteDesktop_SuppressWhenMinimized

REG_DWORD

1 = Suppress when minimized

2 = Do not suppress when minimized

0
投票

下面提到的是带有替代选项的完整解决步骤:

分辨率:

  1. 在远程计算机上,使用以下代码创建一个批处理文件:/f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do ( %windir%\System32 scon.exe %%s /目的地:控制台)
  2. 创建此文件的桌面快捷方式。为此,请右键单击批处理文件并选择发送到|桌面(创建快捷方式)。
  3. 当您需要断开与远程桌面的连接时,请使用管理员权限运行批处理文件。

替代分辨率:

  1. 需要进行一些注册表更改:

  2. 启动注册表编辑器 (regedit.exe)

  3. 导航到以下注册表项之一,具体取决于您是希望仅为当前用户还是计算机上的所有用户修改远程桌面设置:

  4. HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client

  5. HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client

  6. 创建一个名为 RemoteDesktop_SuppressWhenMinimized 的 DWORD 值并将其设置为 2(十六进制或十进制)

  7. 必须通过任务管理器停止rdpclip.exe。

  8. 通过运行以下命令断开 RDP 会话:tscon %sessionname% /dest:console

© www.soinside.com 2019 - 2024. All rights reserved.