关于Windows Vista至Windows 10家庭版和Windows XP解锁RDP和多用户登录这件事
!注意,本文并不一定完全支持Windows 11,本篇文章仅供学习参考!
想发这篇文章是因为刚刚想在Windows XP使用RDP的时候,
察觉到WinXP它默认并不支持多用户登录。
再加上我家里也有一台打了多用户补丁的Win10,
所以就在这里写下一些经历吧。
总所周知,Windows的家庭版一直都不支持RDP和多用户登录。
所以如果我们想让家庭版支持RDP和多用户,我们就得对Termsrv.dll做一些手脚。
幸运的是,针对于Windows Vista以上的系统,
互联网上有个叫做Rdpwarp的工具可以帮助我们自动化修补。
这是它原始版本(由stascorp开发)的Github链接,
但是截止发稿之前他已经有7年已经没有更新了。
所以Github上也就出现了一些兼容最新版Windows 10的改版。
本文比较推荐使用由sebaxakerhtc改版的rdpwarp。
我是从知乎上了解到的,经过测试之后才推荐的。
这是它的github链接,推荐的原因是相比原版更加开箱即用。
并且相对于原版来说也多了一些功能:
而且它也支持一部分win11最新版本,
截止发稿时间它的配置文件仍然在更新。
除了rdpwarp外,站长也用了另外一个叫做SuperRDP的工具。
它是由anhkgg改版的,这是它的Github链接。
他是在我发现sebaxakerhtc的改版之前,
所找到的我当时可用的一个rdpwarp改版版本。
它的配置文件需要关注公众号获取密码才能获取的,
目前还不清楚是否在维护,或许你也可以去看一眼。
理论上来讲,rdpwarp的主要核心在于rdpwarp.ini。
它负责告诉rdpwarp根据Windows版本号如何修补Termsrv.dll的。
插嘴一下,在原仓库的readme.md中其中有一句是写了:
RDP Wrapper does not patch termsrv.dll, it loads termsrv with different parameters
这是因为Rdpwarp会在系统中复制一份termsrv.dll保存为rdpwarp.dll在程序目录
如果直接去替换termsrv.dll的话,会因为此文件被Windows占用+权限不足的原因无法替换。
随后作者利用了注册表,将Termsrv的服务劫持成软件目录下的rdpwarp.dll。
实际上修补也是有修的,只不过不影响原来的Termsrv.dll罢了。
如果你对这个配置文件感兴趣,可以看看这些链接:
https://github.com/sebaxakerhtc/rdpwrap.ini
https://www.youtube.com/watch?v=FiD86tmRBtk
https://www.cnblogs.com/suv789/p/18350291
https://liujiahua.com/blog/2021/04/22/software-RDPWrapper/
并且在最新的win10中,微软将rfxvmt.dll在家庭版中移除,
使用最新改版的rdpwarp还会自动帮你修补这个文件。
原版的rdpwarp不确定是否会进行修补,
但仓库的readme.md中也提到了这个问题,
rfxvmt.dll的文件链接也在其中。
而关于Windows XP及其以下的,则需要自己去手动修补了。
在本文提到的这个rdpwarp,并不适用vista以下的系统。
直接用ida反编译,一个一个去找函数改也不现实,
而且对于我们这些小白来说会挺难受的。
所以本文推荐的方法,
就是使用网上现成的文件和注册表进行修补。
本文将以Windows XP为例子,不教rdp怎么启用。
参考链接在此,RDP怎么启用你可以去百度查找,很简单的。
(实际上XP的RDP启用方法和现在的RDP启用方法基本没有区别)
首先下载UniversalTermsrvPatch_2009(点击即可下载)
随后根据你的系统运行UniversalTermsrvPatch-x86.exe (32位)或UniversalTermsrvPatch-x64.exe(64位)
(不知道?让微软教你)
(实际上,除Windows XP SP3 64-bit Edition和Windows XP 64-bit Edition以外都是32位的。如果你的xp启动画面有x64那就是64位,否则你哪怕用更新补丁升的SP3那也一样是32位)
在弹出的窗口中,点击破解(Patch)即可开始修补,
随后他会在windows\System32下创建一个Termsrv.dll.backup的备份文件,
之后要求你重新启动Windows XP,重启之后自己再配置下rdp即可使用。
如果你想恢复,只需要在程序里点击恢复。
或者手动改名备份文件为Termsrv.dll,运行xp.reg即可