winserver 2012 2016系统

一、初识鼠标键盘失效问题
当用户在一段时间内没有对Windows进行任何操作,Windwos会自动切换到锁屏模式(或屏保模式),甚至待机。
对于普通用户来说,这样设置没问题,而且这也是官方推荐的设置。但如果这台电脑是IT开发人员用来进行自动化测试的机器,尤其是包含UI交互的测试(比如,用脚本操控鼠标来模拟点击一个按钮),这样设置就是错误的,因为退出桌面后,鼠标键盘会失效,UI自动化无法正常进行。
解决这一问题思路很简单:保持计算机一直在桌面上。
具体实施的方法如下:设置Windows的电源模式,让Windows不要自动锁屏和待机,同时去掉屏保。

二、问题进阶
UI自动化测试期间,执行测试的电脑几乎不能被其他人使用(因为鼠标、键盘等输入设备此时需要响应自动化测试脚本)。
为了不影响工作我们通常会搭一台虚拟机,然后远程连接到虚拟机,在虚拟机里进行UI自动化测试。
这种方式很常用,但存在一个问题:如果我们在测试过程中将远程桌面最小化或关闭远程桌面,那测试也会因为鼠标键盘失效而中断。

三、问题成因
最小化会让远程桌面的会话切换到无图形界面的模式,这自然就无法继续接收鼠标、键盘的指令。
关闭远程桌面会让系统切换到登录Desktop的界面,而在登录Desktop的界面上没有我们打开的其他窗口,因此会导致UI自动化测试失败。

四、初级解决方案
1、远程连接上虚拟机,永不关闭,永不最小化
2、如果远程连接的机器是物理机的话,直接打开物理机,启动测试,关闭屏幕。注意:不要远程登录本机器,否则参考方法1

五、远程桌面最小化中断测试的解决办法(注:从机器A通过远程桌面连接机器B,则需要在机器A上修改注册表)
1、运行regedit
2、找到注册表项HKEY_CURRENT_USER\Software\Microsoft\TerminalServer Client
3、新建一个类型为DWORD的注册表项RemoteDesktop_SuppressWhenMinimized并设置值为2
4、然后找到注册表项HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\TerminalServer Client
5、新建一个类型为DWORD的注册表项RemoteDesktop_SuppressWhenMinimized并设置值为2
6、关闭注册表编辑窗口并重启计算机

注意:上述配置仅对当前用户生效,如果你想让新增的注册表项应用于所有用户的话,则需要在HKEY_LOCAL_MACHINE下新建对应的注册表项。

六、关闭远程桌面中断测试的解决办法1
1、我们之前通过点击x图标来关闭远程桌面会导致鼠标键盘失效,本方法的解题思路是用命令关闭远程桌面,同时保留连接。
2、在远程桌面(被连接的电脑)中先执行 query session 来查看当前登录到的 session,(远程桌面的 sessionName 都以 rdp-tcp 开头)。
3、以管理员身份打开命令行工具,并执行 "tscon rdp-tcp#71 /dest:console",其中 rdp-tcp#71 为SessionName,我们可以把rdp-tcp#71替换为对应的ID。
4、该命令会关闭远程桌面的连接,然后把连接返回给远程的那台电脑(绕开登录过程)。
5、这里的 console 也是一个 SessionName,而这个名字的意思并非是 C# 中 “控制台” 的意思,而是指带有输入输出设备的机器,一般直接登录电脑的会话就是 console。

七、关闭远程桌面中断测试的解决办法2
1、每次都打开cmd执行命令太麻烦了,我们可以把命令封装成bat文件,当需要关闭远程桌面并保留连接时以管理员身份执行即可。
2、新建文本文件,将其重命名为Close_RDP.bat
3、将下边六行代码拷贝进去
@%windir%\System32\tscon.exe 0 /dest:console
@%windir%\System32\tscon.exe 1 /dest:console
@%windir%\System32\tscon.exe 2 /dest:console
@%windir%\System32\tscon.exe 3 /dest:console
@%windir%\System32\tscon.exe 4 /dest:console
@%windir%\System32\tscon.exe 5 /dest:console

当多个用户登录同一台计算机时,就会出现 Session ID 大于1的情况,比如远程桌面。
.bat文件中有六行命令,在本例中实际起作用的是ID=4的那一条,由于你不能确定自己是第几个登录到远程桌面的,也就无法确定自己的SessionID,
本例仅处理了0~5的SessionID,如果你进行远程连接时被分配的SessionID是6,那脚本就对你无效了,自己稍加修改即可。

八、关闭远程桌面中断测试的解决办法3
假设用于进行UI自动化测试的机器是虚拟机B,现在使用另一台虚拟机A作为中转。

1、本机先连接虚拟机A
2、然后再从虚拟机A连接到虚拟机B
3、最后断开本机与虚拟机A的连接

远程桌面连接方式造成键盘鼠标失效(UI自动化)相关推荐

  1. 无法连接到远程网络连接到服务器失败怎么办,无法远程桌面连接到服务器怎么办(连接失败原因和解决法)...

    释放双眼,带上耳机,听听看~! 方法一:使用windows自带的shutdown命令,远程重启服务器 当远程桌面连接服务无法顺利使用后,我们首先要确定的是服务器是否真的死机.我们可以通过ping目标服 ...

  2. 远程--不用关闭防火墙,也可以远程连接(远程桌面连接不上怎么办)

    大家在使用远程桌面功能时可能会遇到远程桌面连接不了的情况,在这里给大家介绍解决方法. 远程桌面连接可以远程控制另一台电脑做各种操作,凡事都可能会出现一些意外的问题,同样win7远程桌面也可能会出现远程 ...

  3. 远程桌面连接不上,三种方法教你重启服务器

    方法一:使用windows自带的shutdown命令,远程重启服务器 当远程桌面连接服务无法顺利使用后,我们首先要确定的是服务器是否真的死机.我们可以通过ping目标服务器IP看是否畅通或者访问该服务 ...

  4. linux远程windows无法输入,XRDP在Windows下用远程桌面连接,键盘失效有关问题

    XRDP在Windows下用远程桌面连接,键盘失效问题 很久没上这个博客了,最近在做虚拟化方面的东西,有个需求是通过windows远程连接Linux桌面,采用的是xrdp.安装和使用xrdp都比较容易 ...

  5. 计算机远程桌面连接有几种方式,计算机都有哪些方式能够实现远程桌面连接功能?...

    原标题:计算机都有哪些方式能够实现远程桌面连接功能? "极客谈科技",全新视角.全新思路,伴你遨游神奇的科技世界. 前言:计算机远程桌面连接功能是一种较为使用的工具,微软的Wind ...

  6. debian-7.11.0-amd64用xrdp远程桌面连接时键盘错乱的修复

    习惯安装好wheezy后第一件事就是安装远程桌面的支持和自己用惯用的文本编辑器joe $ sudo apt-get -y --force-yes install xrdp joe 然后从win台机用远 ...

  7. 远程桌面连接服务器时,键盘不能正常打字

    远程桌面连接服务器时,键盘不能正常打字.此时把windows自带的小键盘打开后,此时再用键盘就能正常输入. 打开小键盘的方法: 1.运行行输入:osk 2. 开始-附件-轻松访问-屏幕键盘.OK 另一 ...

  8. 通过Windows的远程桌面连接树莓派

    文章目录 ▌01 远程连接树莓派 1.用于课程设计的Raspberry Pi4 ModelB 2.配置信息 (1)方法来源 (2)网络连接条件 ▌02 远程连接配置 1.配置Raspberrry Pi ...

  9. WIN7远程桌面连接方法!远程控制教程!XP远程桌面连接教程!如何设置远程桌面连接?远程桌面连接设置!

    WIN7远程桌面连接方法! 首先,我们要在被连接的计算机上进行设置.使用鼠标右键单击"计算机"图标,选择"属性"  在打开的"系统&quo ...

  10. WIN7远程桌面连接方法!远程控制教程!XP远程桌面连接教程!如何设置远程桌面连接?远程桌面连接设置...

    WIN7远程桌面连接方法! 首先,我们要在被连接的计算机上进行设置.使用鼠标右键单击"计算机"图标,选择"属性" 在打开的"系统"窗口点击& ...

最新文章

  1. 2020 IEEE冯诺依曼奖得主:Michael Jordan --机器学习领域泰斗级人物
  2. Windows Small Business Server 2003 意外关闭 ; 1001, 1013 和 1014 事件记录
  3. linux ubuntu无法登陆,新手入门求解答!ubuntu命令创建用户无法登入问题!
  4. 【剑指offer-Java版】45圆圈中最后剩下的数字
  5. Xcode搭建真机调试环境 图文实例
  6. smtplib python教程_Python使用poplib模块和smtplib模块收发电子邮件的教程
  7. 解决opencv输出视频无法正常播放问题
  8. 多输出模型实例的数据加载
  9. DB2数据库迁移,数据库导入导出
  10. js上传图片转base64格式
  11. 随机信号分析学习笔记(3)
  12. 计算机机房的消防验收,机房建设(消防)解决方案
  13. [总结] 上海看房体验有感
  14. 如何在word中的框中打钩、打叉
  15. 团队作业8----第二次项目冲刺(Beta阶段) 第三天
  16. 电子元件-温湿度元件与传感器
  17. 恒生期货交易时间(恒生指数期货交割日期)
  18. NI LabVIEW 2018 DAQmx定时属性节点 缺失部分属性的问题 解决方案
  19. 如需定义元素内容与边框间的空间,可使用 padding 属性,并可使用负值?
  20. 解决思科 Cisco Packet Tracer 7.3登录问题

热门文章

  1. matlab里的pid参数调节,pid调节的方法
  2. 你到底是前端人还是搬砖人?推荐一款国产摸鱼神器!
  3. 贝叶斯网络与EM算法
  4. 【208.11.21 直播QA】TI C2000 Piccolo单芯片——实现双轴伺服电机和马达控制
  5. csgo服务器显示连接中,CSGO提示连接到官方任意服务器失败怎么办?
  6. mouse without borders 一套键鼠控制多台设备
  7. 奥克兰大学计算机工程硕士学制,2020年奥克兰大学数据科学硕士专业硕士申请条件-学费-世界排名...
  8. Udacity数据分析(入门)-探索美国共享单车数据
  9. 11 - JavaScript原型对象
  10. EM算法及对GMM的参数估计(EM算法的R实现 vs R mclust包)