Sunshine 与 RDP(Windows 远程桌面) 配合的多用户双开串流方案
0. 摘要
本方案使用 Sunshine 官方版以及 RDP(Windows 远程桌面) 实现了双开游戏互不影响,相当于电脑分身的效果。
具体流程如下:
- 安装 Sunshine 并配置好相关配置
- 使用 RDPWrap 修改 RDP 服务以解除多用户连接限制
- 创建一个新用户以供 RDP 会话
- 在主用户下使用本地连接到新用户,以创建一个远程桌面
- 在新用户下打开 Sunshine,并使用相关客户端连接
- 挂起 RDP 客户端进程,以减少性能占用
1. 资源准备
PC 所需工具&文件
- Sunshine (Github)
- RDPWrap (Github)
- rdpwrap.ini (Github)
- PsSuspend (Microsoft)(可选)
Tip: Sunshine 不推荐基地版,因为基地版会不断尝试创建虚拟显示器
客户端所需 APP
- Moonlight 或其衍生出的改版(推荐阿西西:Android(Github) / iOS($2.99 App Store 美区))
- Windows(各大应用商店下载)
2. 环境准备
开启远程&策略组设置
参考 Windows 10/11 多用户同时远程登陆 - 知乎 进行修改
Tip: 一般重启服务即生效,无需重启电脑,下文有说明
安装 RDPWrap
由于上文的参考链接已给出具体方法,这里就简要说明一下
- 下载 RDPWrap-v1.6.2.zip
- 将其解压至一个文件夹,管理员运行
install.bat - 下载最新版的 rdpwrap.ini,用它替换掉
C:\Program Files\RDP Wrapper\rdpwrap.ini - 右键
Windows 徽标选择Windows PowerShell(管理员)依次运行:
1 | Stop-Service -Name termService -Force |
这样就省去了重启步骤
运行 RDPConf.exe,若显示全部绿色,则配置成功,运行 RDPCheck.exe 并忽视安全警告,出现登录界面表明能够正常使用了
Tip: 若出现
Not Supported字样,可尝试去项目的 Issues 中查找匹配你系统版本(运行winver可查看系统内部版本)的配置,并将其附加到上述rdpwrap.ini文件中。日后若因 Windows 更新而再次失效,可重复此操作。
创建用户
- Win + R 打开运行,输入
lusrmgr.msc并回车 - 进入用户列表,空白处右键-新用户,随便输入一个用户名,若不需要登录密码可以先取消下次更改密码,再勾选密码永不过期,创建
- 双击刚刚创建好的用户,转到隶属于选项卡,点击添加-高级-立即查找-双击(电脑名)\Administrators-确定
- 可以关闭创建用户的窗口了,然后在开始菜单中点击用户头像,选择刚刚创建的用户,进入等待用户初始化即可,然后再回到主用户
Tip: 首次进入会有用户体验计划,建议全部取消,并且自动全屏打开
Edge,可使用Alt + F4关闭
修改 RDP 帧率
参考 基于 Windows 的远程会话中的帧速率限制为 30 FPS - Microsoft Learn 进行修改
知乎中有人提到,DWMFRAMEINTERVAL的值对应的帧率关系为:
1 | 15 decimal = 60 frames |
然而,有人实测发现数值 8 对应 120 FPS 左右,该对照表在最新版本中已删去,也许是微软自己也不知道数值的对应关系,我的电脑实测发现 15 对应 45 FPS 左右,其余的大家可以自己去试
3. 开始连接
PC 端准备
- 检查后台是否有 Sunshine 或相关服务运行,若有则退出
- Win + R 或者终端运行
mstsc /v:127.0.0.2即可创建本地远程桌面会话 - 忽略安全警告,进入登录界面,点击创建好的用户,进入桌面
- 在该用户下使用管理员权限打开 Sunshine,进入管理后台
Tip: 连接本地会话若出现
无法连接到另一个控制台会话错误,可尝试将127.0.0.2最后一个数字改为更高的值(3-255);若出现连接超时,则检查 IP 输入是否正确,若正确则尝试重启 RDP 服务(上文有提到),若还是不行请运行RDPWarp中的uninstall.bat进行卸载操作,再次重启服务,卸载后可以连接上了说明是配置文件有问题或者新系统不兼容,则请耐心等待社区兼容
客户端连接
使用 Moonlight 连接到 PC,若是第一次连接,将会提示输入 PIN 码,在 PC 端后台 PIN 码输入页里输入即可(新版还要输设备名,若为空随便填即可)
Tip: 若遇到连接不上的情况,在排除网络和 IP(同一网络环境)问题后,可以尝试删除原先保持的电脑,再次添加新电脑
后续
客户端连接上了就不要退出远程桌面了(也不要最小化),这样会使微软的远程虚拟显示器挂起,导致 Moonlight 断开连接
若觉得远程连接窗口太碍眼,可以把它拖至其他桌面,按 Win + TAB 进入多任务视图,创建一个桌面,把远程连接窗口拖进去,这样就可以在窗口活动的情况下隐藏掉了
若你还是觉得远程连接窗口在不断渲染占用性能,可以使用 pssuspend64.exe (存放在 PsSuspend 中)挂起进程,在程序目录下运行:
1 | .\pssuspend64.exe mstsc.exe |
注:第一次运行会提示你同意条款,同意即可
之后要解除挂起的话,再运行:
1 | .\pssuspend64.exe -r mstsc.exe |
这样远程桌面连接就不会占用性能了
除此之外…
远程会话创建后不要断开连接后再次登录使用,尽量是第一次连接后再打开 Sunshine,因为实测发现 Sunshine 在 RDP 环境下仍存在问题,会导致在第二次或多次连接后无法正常获取显示器配置(能检测到 RDP 的虚拟显示器但无法正常使用)
若配置正确,第一次运行日志如下:
1 | [2026-05-04 23:09:26.320]: Error: [code: 2, message: 系统找不到指定的文件。] "RegQueryValueExW" failed when getting size. |
注意看到一个显示设备,显示设备名为 DISPLAY1,若是别的更高数值,则大概率你已经多次远程桌面断开重连了,以下为异常状态日志:
1 | [2026-05-04 23:16:05.746]: Info: Will compute new display device topology from ... |
此后一段时间 Sunshine 会直接崩溃,并且重新运行后仍出现相同报错
解决办法很简单,注销,然后重新连接,再管理员运行 Sunshine 即可
4. 连接后注意事项
由于在资源管理器中运行的 Sunshine 只有管理员权限,无法捕获到 UAC 界面(仅 SYSTEM 特权可捕获画面),运行带管理员权限的应用就会黑屏卡死无法而继续操作,此时需要使用之前的远程桌面连接窗口(需解除挂起状态)进行手动确认,因此建议使用任务管理器(文件-运行新任务,勾选 以系统管理权限创建此任务)打开此类程序,防止因 UAC 界面卡死
说些什么吧!