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文件,然后就可以输入了。
 

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

相关推荐
我是一只小青蛙88825 分钟前
C++双向循环链表实现详解
windows
长行1 小时前
Python|Windows 安装 DeepSpeed 安装方法及报错 Unable to pre-compile async_io 处理
windows·python·deepspeed
玖釉-1 小时前
[Vulkan 学习之路] 11 - 组装流水线:固定功能阶段 (Fixed Functions)
c++·windows·图形渲染
几道之旅3 小时前
我错了,mklink /D _isaac_sim C:\isaacsim和直接新建快捷方式原来不一样
windows
鹿角片ljp3 小时前
Java IO流案例:使用缓冲流恢复《出师表》文章顺序
java·开发语言·windows
FL16238631295 小时前
[C++][cmake]基于C++在windows上onnxruntime+opencv部署yolo26-seg的实例分割onnx模型
c++·windows·opencv
非凡ghost5 小时前
SoftPerfect Network Scanner(网络扫描管理工具)
网络·windows·学习·软件需求
H Corey6 小时前
Java--面向对象之继承与多态
java·开发语言·windows·学习·算法·intellij-idea
sanqima6 小时前
设置鼠标的灵敏度
计算机外设·鼠标灵敏度
獨枭6 小时前
拉票中......
windows