2

首先对标题(可能不是那么具体)感到抱歉,因为它由多个主题组成。

我遇到的问题与我的测试自动化设置有关。它由一个处理 BE + FE 和自己开始测试的 linux 机器组成。还有一个 Windows Server 2008(终端),我通过 RDP 会话连接到它,它是运行实际测试的地方。出于自动化目的,我使用 Ranorex。

首先我是如何设置 Win 机器的:由于 Ranorex 是一个 GUI 测试自动化工具,它需要让组件对 AUT(被测应用程序)可见,因此您需要关闭 RPD 客户端而不关闭会话本身,否则测试将开始失败。

为此,我使用以下代码创建了一个 bat 文件:

%windir%\System32\tscon.exe RDP-Tcp#0 /dest:console

并在 HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client 下添加了一个 reg entry DWORD 值

RemoteDesktop_SuppressWhenMinimized

值为 2。

这样做是在以管理员权限运行 bat 文件后,它会关闭 RDP 会话,但仍会保持终端连接到 Win Server 机器,从而允许运行测试。

现在手头的问题是,在安全关闭会话后,为左打开会话设置的分辨率为 1024x768,而 RDP 连接打开时为 1920x1200。

所以最后是我自己无法回答的问题:是否有可能为保持打开的会话指定解决方案?

4

3 回答 3

1

我为我找到的唯一解决方案是在机器上安装一些 VNC 软件,连接到它,更改分辨率(在我的情况下也是 1920x1200),因为你不能从 RDP 做到这一点而且我无法访问真机。

我还下载了 QRes.exe 工具并将其添加到路径中。

最后创建这个脚本:

for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (
  %windir%\System32\tscon.exe %%s /dest:console
  timeout 5
  qres /X 1920 /Y 1080 /C 32
)

为其创建快捷方式(设置为以管理员身份运行),从现在开始,您可以通过 RDP (mstsc) 进行连接,但离开时只需单击上述脚本的图标,而不仅仅是关闭 RDP。

PS:Qres 设置为 1920x1080,因为它不支持 1920x1200,但在我的情况下(Windows 10),测试仍然在 VNC -> 1920x1200 设置的分辨率下运行,所以没关系。

于 2017-03-24T09:36:25.937 回答
0

现在手头的问题是,在安全关闭会话后,为左打开会话设置的分辨率>为 1024x768,而当 RDP 连接>打开时,分辨率为 1920x1200。

我也注意到了同样的事情。据我所知,您要远程连接的机器需要在物理(或虚拟)机器上具有默认分辨率 = 1920x1200。

我已经使用 VNC 来解决这个限制 - 但我能够找到的唯一信息来防止它发生变化是让所有机器上的默认分辨率都相同。

祝你好运!

于 2016-07-19T15:20:34.750 回答
0

我不得不处理类似的问题。我通过在机器中安装Dameware MiniRemote Control代理解决了这个问题。通过 Dameware Mini Remote Control 应用程序连接到它后,您可以更改 RDP 中无法更改的分辨率。(RealVNC 或类似的可能会像其他人建议的那样工作,我没有尝试过)

一些对我不起作用的解决方案

  1. QRes.exe /x:1920 /y:1200 http://qres.sourceforge.net/
  2. Windows Management Instrumentation(内置):wmic desktopmonitor create screenheight=1920, screenwidth=1200
  3. ChangeScreenResolution:http ://tools.taubenkorb.at/change-screen-resolution/
  4. 持久窗口:http ://www.ninjacrab.com/persistent-windows/
于 2017-07-07T16:04:09.187 回答