如题所示,我正在使用 openSUSE Tumbleweed + KDE wayland,由于 wine 默认的功能较为欠缺(如,输入法残缺,窗口一直抖,中文字体缺失,剪贴板垃圾,各种黑屏等),我只好选择使用 kvm + qemu + libvirt + virt-manager + virtio driver 运行 Windows 虚拟机来跑微信这样的应用。
最近了解到通过 RDP 协议使用 xfreerdp 可以将 Windows 中的单个窗口映射到 KDE 桌面中,于是我通过如下命令进行连接:
xfreerdp /rfx /d:"VM 主机名" /u:"VM 用户名" /p:"VM 密码" /v:"VM 的 IP" +auto-reconnect +home-drive +clipboard /scale:100 /dynamic-resolution /audio-mode:0 /microphone /app:"explorer.exe"
第一眼看起来效果还可以,** 支持音频与麦克风重定向,支持文本与图片的各种复制粘贴,也支持从 Host 直接 ctrl c 文件进入 Guest**(从 Guest 拷贝文件到 Host 需要走共享文件夹):
但是 xfreerdp 似乎存在一些严重的 bug,例如:
- 经常会出现严重的画面撕裂问题。
- 每一次打开新窗口都需要重新把所有窗口打开一次(类似 session 重新连接?但原有 session 中的工作不会被重置,只是所有的窗口都会消失再重新出现)。
- 后台应用(如酷狗音乐等)无法保持 RDP 连接的存续,必须要有一个前台窗口的留存。
- …
wlfreerdp 似乎是 freerdp on wayland 的版本,但是不支持 /app
选项(似乎是因为 wayland 不支持某些机制),因此也就无法达成仅映射单个窗口的效果(而需要映射整个虚拟机桌面)。
那么是否有类似的比较完美的能够映射单个窗口的方案?