XRDP在Windows下用远程桌面连接,键盘失效问题

情况如下:

使用 windows远程linux图形化界面键盘乱序

大概是如下这样的情况

1 2 3 4 5 6 7 8 9 z y
正常情况 ! @ # $ % ^ & * ( z y
乱码情况 ~ " à é . . . . . y z

处理办法:

第一步

桌面远程上不去

ssh 可以登录,直接连接IP地址

上去之后输出命令查看 xrdp对应的keymap文件

bash 复制代码
先找到keymap文件位置
默认是在/etc/xrdp/目录下

find / -name 'km*.ini'
find: '/proc/608932': No such file or directory
find: '/proc/609143': No such file or directory
/etc/xrdp/km-0000040a.ini
/etc/xrdp/km-0000040b.ini
/etc/xrdp/km-0000040c.ini
/etc/xrdp/km-00000410.ini
/etc/xrdp/km-00000411.ini
/etc/xrdp/km-00000412.ini
/etc/xrdp/km-00000414.ini
/etc/xrdp/km-00000419.ini
/etc/xrdp/km-0000041d.ini
/etc/xrdp/km-00000807.ini
/etc/xrdp/km-0000080c.ini
/etc/xrdp/km-00000813.ini
/etc/xrdp/km-00000816.ini
/etc/xrdp/km-19360409.ini
/etc/xrdp/km-00000804.ini
/etc/xrdp/km-00000406.ini
/etc/xrdp/km-00000407.ini
/etc/xrdp/km-00000409.ini
/etc/xrdp/km-00000415.ini
/etc/xrdp/km-00000416.ini
/etc/xrdp/km-00000809.ini
/etc/xrdp/km-0000080a.ini
/etc/xrdp/km-0000100c.ini
/etc/xrdp/km-00010409.ini
这些就是具体的输入法对应的编码

第二步

查看 windows 输入法(编码) 顺序

win + R 输入:REGEDIT

找到 "HKEY_CURRENT_USER\Keyboard Layout\Preload"分支

bash 复制代码
E0200804 代表的是搜狗输入法
E0200804 紫光输入法*①
E00E0804 微软拼音输入法
E0040804 智能abc输入法
E0050804 区位码输入法
E0010804 全拼输入法
E0100804 五笔输入法
00000409 英文输入法
E0030804 郑码输入法
E0020804 双拼输入法
00000804 中文输入法(简体)-美式键盘

E0200804这个不一定是紫光的,他可能是谷歌、搜狗、智能陈桥、拼音加加Plus、紫光中的任一种
(还可能是与这些输入法输入状态栏一样的其他拼音输入法),
这个取决于你系统先安装这几个输入法中的哪一个,那个就是E0200804

通过上面,知道了我的windows系统第一输入法是E0200804, 而在Linux系统下Xrdp默认的keymap文件中,是没有"km-E0200804.ini"这个文件的,这就导致xrdp无法读取keymap文件,无法进行键盘映射,从而导致了我们无法再xrdp界面中输入且输入乱序。

通过修改windows本机的注册表配置对应的编码即可

bash 复制代码
win + R 输入:REGEDIT
找到 "HKEY_CURRENT_USER\Keyboard Layout\Preload"分支

我们把windows注册表中HKEY_CURRENT_USER\Keyboard Layout\Preload中的默认或者1,
编辑成00000409, 即英文输入法,
这样,xrdp就会去读取"/etc/xrdp/km-00000409.ini" keymap文件,然后就可以输入了。
 

需要注意的是,修改注册表之后,记得重启系统。或者是注销一下,让其起作用。

相关推荐
cpsvps_net8 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋8 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cpsvps11 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
网硕互联的小客服14 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
etcix14 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
许泽宇的技术分享14 小时前
Windows MCP.Net:基于.NET的Windows桌面自动化MCP服务器深度解析
windows·自动化·.net
非凡ghost15 小时前
AMS PhotoMaster:全方位提升你的照片编辑体验
windows·学习·信息可视化·软件需求
mortimer17 小时前
一次与“顽固”外部程序的艰难交锋:subprocess 调用exe踩坑实录
windows·python·ai编程
OBOO鸥柏商用液晶显示厂家18 小时前
OBOO鸥柏丨75寸/86平板企业办公会议触控一体机核心国产化品牌招投标参数
计算机外设·电脑·大屏端·信息发布系统·会议一体机
gameatp19 小时前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows