RDP Wrapper Library by Stas’M
The goal of this project is to enable Remote Desktop Host support and concurrent RDP sessions on reduced functionality systems for home usage.
RDP Wrapper works as a layer between Service Control Manager and Terminal Services, so the original termsrv.dll file remains untouched. Also this method is very strong against Windows Update.
NT Version | Screenshots |
---|---|
Windows Vista | |
Windows 7 | |
Windows 8 | |
Windows 8.1 | |
Windows 10 |
This solution was inspired by Windows Product Policy Editor, big thanks to kost
— binarymaster
Attention:
It’s recommended to have original termsrv.dll file with the RDP Wrapper installation. If you have modified it before with other patchers, it may become unstable and crash in any moment.
Information:
- Source code is available, so you can build it on your own
- RDP Wrapper does not patch termsrv.dll, it loads termsrv with different parameters
- RDPWInst and RDPChecker can be redistributed without development folder and batch files
- RDPWInst can be used for unattended installation / deployment
- Windows 2000, XP and Server 2003 will not be supported
Key features:
- RDP host server on any Windows edition beginning from Vista
- Console and remote sessions at the same time
- Using the same user simultaneously for local and remote logon (see configuration app)
- Up to 15 concurrent sessions (the actual limitation depends on your hardware and OS version)
- Console and RDP session shadowing (using Task Manager in Windows 7 and lower, and Remote Desktop Connection in Windows 8 and higher)
- Full multi-monitor support for RDP host
- …and if you find a new feature not listed here, tell us
Porting to other platforms:
- ARM for Windows RT (see links below)
- IA-64 for Itanium-based Windows Server? Well, I have no idea
Building the binaries:
- x86 Delphi version can be built with Embarcadero RAD Studio 2010
- x86/x64 C++ version can be built with Microsoft Visual Studio 2013
Links:
- Official GitHub repository:
https://github.com/stascorp/rdpwrap/ - Official Telegram chat:
https://t.me/rdpwrap - Active discussion in the comments here:
Enable remote desktop on Windows 8 core / basic — Andrew Block .net - MDL Projects and Applications thread here:
RDP Wrapper Library (works with Windows 8.1 Basic) - Some ideas about porting to ARM for Windows RT (post #23):
[Q] Mod Windows RT to enable Remote Desktop - Adding «Remote Desktop Users» group:
http://superuser.com/questions/680572/
Tutorial videos:
- Updating RDP Wrapper INI file manually (now use installer to update INI file)
- How to find offsets for new termsrv.dll versions
Files in release package:
File name | Description |
---|---|
RDPWInst.exe |
RDP Wrapper Library installer/uninstaller |
RDPCheck.exe |
Local RDP Checker (you can check the RDP is working) |
RDPConf.exe |
RDP Wrapper Configuration |
install.bat |
Quick install batch file |
uninstall.bat |
Quick uninstall batch file |
update.bat |
Quick update batch file |
Frequently Asked Questions
Where can I download the installer or binaries?
In the GitHub Releases section.
Is it legal to use this application?
There is no definitive answer, see this discussion.
The installer tries to access the Internet, is it normal behaviour?
Yes, it works in online mode by default. You may disable it by removing -o
flag in the install.bat
file.
What is online install mode?
Online install mode introduced in version 1.6.1. When you installing RDP Wrapper first time using this mode, it will download latest INI file from GitHub. See this discussion.
What is INI file and why we need it?
INI file was introduced in version 1.5. It stores system configuration for RDP Wrapper — general wrapping settings, binary patch codes, and per build specific data. When new termsrv.dll
build comes out, developer adds support for it by updating INI file in repository.
Config Tool reports version 1.5, but I installed higher version. What’s the matter?
Beginning with version 1.5 the rdpwrap.dll
is not updated anymore, since all settings are stored in INI file. Deal with it.
Config Tool shows
[not supported]
and RDP doesn’t work. What can I do?
Make sure you’re connected to the Internet and run update.bat
.
Update doesn’t help, it still shows
[not supported]
.
Visit issues section, and check whether your termsrv.dll
build is listed here. If you can’t find such issue, create a new — specify your build version for adding to support.
Why
RDPCheck
doesn’t allow to change resolution and other settings?
RDPCheck
is a very simple application and only for testing purposes. You need to use Microsoft Remote Desktop Client (mstsc.exe
) if you want to customize the settings. You can use 127.0.0.1
or 127.0.0.2
address for loopback connection.
Known issues:
- Beginning with Windows 8 on tablet PCs inactive sessions will be logged out by system — more info
- Beginning with Windows 10 you can accidentally lock yourself from PC — more info
- Beginning with the Creators Update for Windows 10 Home, RDP Wrapper will no longer work, claiming that the listener is
[not listening]
because ofrfxvmt.dll
is missing — more info, download links - Terminal Service does not start after installing some updates or «Access Denied» issue — #215, #101
- RDP Wrapper does not work with RemoteFX enabled hosts — #127, #208, #216
- RDP works, but termsrv.dll crashes on logon attempt — Windows Vista Starter RTM x86 (termsrv.dll
6.0.6000.16386
) - If Terminal Services hangs at startup, try to add
rdpwrap.dll
to antivirus exclusions. Also try to isolate RDP Wrapper from other shared services by the command:
sc config TermService type= own
- RDP Wrapper can be removed by AVG Free Antivirus and Norton Antivirus — first make sure you downloaded official release from GitHub, then add it to exclusions.
Change log:
2017.12.27
- Version 1.6.2
- Installer updated
- Include updated INI file for latest Windows builds
- Added check for supported Windows versions (#155)
- Added feature to take INI file from current directory (#300)
- Added feature to restore rfxvmt.dll (missing in Windows 10 Home #194)
- RDP Config updated
- Added feature to allow custom start programs (#13 (comment))
- MSI installation package added (#14)
2016.08.01
- Version 1.6.1
- Include updated INI file for latest Windows builds
- Installer updated
- Added online install mode
- Added feature to keep settings on uninstall
- RDP Config updated
- Fixed update firewall rule on RDP port change
- Added feature to hide users on logon
2015.08.12
- Version 1.6
- Added support for Windows 10
- INI file has smaller size now — all comments are moved to KB file
- Installer updated
- Added workaround for 1056 error (although it isn’t an error)
- Added update support to installer
- Newest RDPClip versions are included with installer
- RDP Checker updated
- Changed connect IP to 127.0.0.2
- Updated some text messages
- RDP Config updated
- Added all possible shadowing modes
- Also it will write settings to the group policy
2014.12.11
- Version 1.5
- Added INI config support
- Configuration is stored in INI file now
- We can extend version support without building new binaries
- Added support for Windows 8.1 with KB3000850
- Added support for Windows 10 Technical Preview Update 2
- Installer updated
- RDP Config updated
- Diagnostics feature added to RDP Config
2014.11.14
- Version 1.4
- Added support for Windows 10 Technical Preview Update 1
- Added support for Windows Vista SP2 with KB3003743
- Added support for Windows 7 SP1 with KB3003743
- Added new RDP Configuration Program
2014.10.21
- Installer updated
- Added feature to install RDP Wrapper to System32 directory
- Fixed issue in the installer — NLA setting now remains unchanged
- Local RDP Checker updated
- SecurityLayer and UserAuthentification values changed on check start
- RDP Checker restores values on exit
2014.10.20
- Version 1.3
- Added support for Windows 10 Technical Preview
- Added support for Windows 7 with KB2984972
- Added support for Windows 8 with KB2973501
- Added extended support for Windows Vista (SP0, SP1 and SP2)
- Added extended support for Windows 7 (SP0 and SP1)
- Some improvements in the source code
- Installer updated to v2.2
- Fixed installation bug in Vista x64 (wrong expand path)
- Local RDP Checker updated
- Added description to error 0x708
2014.07.26
- Version 1.2
- Added support for Windows 8 Developer Preview
- Added support for Windows 8 Consumer Preview
- Added support for Windows 8 Release Preview
- Added support for Windows 8.1 Preview
- Added support for Windows 8.1
- More details you will see in the source code
- Installer updated to v2.1
2013.12.09
- C++ port of RDP Wrapper was made by Fusix
- x64 architecture is supported now
- Added new command line installer v2.0
- Added local RDP checker
- Source code (C++ port, installer 2.0, local RDP checker) is also included
2013.10.25
- Version 1.1 source code is available
2013.10.22
- Version 1.1
- Stable release
- Improved wrapper (now it can wrap internal unexported termsrv.dll SL Policy function)
- Added support for Windows 8 Single Language (tested on Acer Tablet PC with Intel Atom Z2760)
2013.10.19
- Version 1.0
- First [beta] version
- Basic SL Policy wrapper
Supported Terminal Services versions:
- 6.0.X.X (Windows Vista / Server 2008)
- 6.0.6000.16386 (Windows Vista)
- 6.0.6001.18000 (Windows Vista SP1)
- 6.0.6002.18005 (Windows Vista SP2)
- 6.0.6002.19214 (Windows Vista SP2 with KB3003743 GDR)
- 6.0.6002.23521 (Windows Vista SP2 with KB3003743 LDR)
- 6.1.X.X (Windows 7 / Server 2008 R2)
- 6.1.7600.16385 (Windows 7)
- 6.1.7600.20890 (Windows 7 with KB2479710)
- 6.1.7600.21316 (Windows 7 with KB2750090)
- 6.1.7601.17514 (Windows 7 SP1)
- 6.1.7601.21650 (Windows 7 SP1 with KB2479710)
- 6.1.7601.21866 (Windows 7 SP1 with KB2647409)
- 6.1.7601.22104 (Windows 7 SP1 with KB2750090)
- 6.1.7601.18540 (Windows 7 SP1 with KB2984972 GDR)
- 6.1.7601.22750 (Windows 7 SP1 with KB2984972 LDR)
- 6.1.7601.18637 (Windows 7 SP1 with KB3003743 GDR)
- 6.1.7601.22843 (Windows 7 SP1 with KB3003743 LDR)
- 6.1.7601.23403 (Windows 7 SP1 with KB3125574)
- 6.1.7601.24234 (Windows 7 SP1 with KB4462923)
- 6.2.8102.0 (Windows 8 Developer Preview)
- 6.2.8250.0 (Windows 8 Consumer Preview)
- 6.2.8400.0 (Windows 8 Release Preview)
- 6.2.9200.16384 (Windows 8 / Server 2012)
- 6.2.9200.17048 (Windows 8 with KB2973501 GDR)
- 6.2.9200.21166 (Windows 8 with KB2973501 LDR)
- 6.3.9431.0 (Windows 8.1 Preview)
- 6.3.9600.16384 (Windows 8.1 / Server 2012 R2)
- 6.3.9600.17095 (Windows 8.1 with KB2959626)
- 6.3.9600.17415 (Windows 8.1 with KB3000850)
- 6.3.9600.18692 (Windows 8.1 with KB4022720)
- 6.3.9600.18708 (Windows 8.1 with KB4025335)
- 6.3.9600.18928 (Windows 8.1 with KB4088876)
- 6.3.9600.19093 (Windows 8.1 with KB4343891)
- 6.4.9841.0 (Windows 10 Technical Preview)
- 6.4.9860.0 (Windows 10 Technical Preview Update 1)
- 6.4.9879.0 (Windows 10 Technical Preview Update 2)
- 10.0.9926.0 (Windows 10 Pro Technical Preview)
- 10.0.10041.0 (Windows 10 Pro Technical Preview Update 1)
- 10.0.10240.16384 (Windows 10 RTM)
- 10.0.10586.0 (Windows 10 TH2 Release 151029-1700)
- 10.0.10586.589 (Windows 10 TH2 Release 160906-1759 with KB3185614)
- 10.0.11082.1000 (Windows 10 RS1 Release 151210-2021)
- 10.0.11102.1000 (Windows 10 RS1 Release 160113-1800)
- 10.0.14251.1000 (Windows 10 RS1 Release 160124-1059)
- 10.0.14271.1000 (Windows 10 RS1 Release 160218-2310)
- 10.0.14279.1000 (Windows 10 RS1 Release 160229-1700)
- 10.0.14295.1000 (Windows 10 RS1 Release 160318-1628)
- 10.0.14300.1000 (Windows Server 2016 Technical Preview 5)
- 10.0.14316.1000 (Windows 10 RS1 Release 160402-2227)
- 10.0.14328.1000 (Windows 10 RS1 Release 160418-1609)
- 10.0.14332.1001 (Windows 10 RS1 Release 160422-1940)
- 10.0.14342.1000 (Windows 10 RS1 Release 160506-1708)
- 10.0.14352.1002 (Windows 10 RS1 Release 160522-1930)
- 10.0.14366.0 (Windows 10 RS1 Release 160610-1700)
- 10.0.14367.0 (Windows 10 RS1 Release 160613-1700)
- 10.0.14372.0 (Windows 10 RS1 Release 160620-2342)
- 10.0.14379.0 (Windows 10 RS1 Release 160627-1607)
- 10.0.14383.0 (Windows 10 RS1 Release 160701-1839)
- 10.0.14385.0 (Windows 10 RS1 Release 160706-1700)
- 10.0.14388.0 (Windows 10 RS1 Release 160709-1635)
- 10.0.14393.0 (Windows 10 RS1 Release 160715-1616)
- 10.0.14393.1198 (Windows 10 RS1 Release Sec 170427-1353 with KB4019472)
- 10.0.14393.1737 (Windows 10 RS1 Release Inmarket 170914-1249 with KB4041691)
- 10.0.14393.2457 (Windows 10 RS1 Release Inmarket 180822-1743 with KB4343884)
- 10.0.14901.1000 (Windows 10 RS Pre-Release 160805-1700)
- 10.0.14905.1000 (Windows 10 RS Pre-Release 160811-1739)
- 10.0.14915.1000 (Windows 10 RS Pre-Release 160826-1902)
- 10.0.14926.1000 (Windows 10 RS Pre-Release 160910-1529)
- 10.0.14931.1000 (Windows 10 RS Pre-Release 160916-1700)
- 10.0.14936.1000 (Windows 10 RS Pre-Release 160923-1700)
- 10.0.14942.1000 (Windows 10 RS Pre-Release 161003-1929)
- 10.0.14946.1000 (Windows 10 RS Pre-Release 161007-1700)
- 10.0.14951.1000 (Windows 10 RS Pre-Release 161014-1700)
- 10.0.14955.1000 (Windows 10 RS Pre-Release 161020-1700)
- 10.0.14959.1000 (Windows 10 RS Pre-Release 161026-1700)
- 10.0.14965.1001 (Windows 10 RS Pre-Release 161104-1700)
- 10.0.14971.1000 (Windows 10 RS Pre-Release 161111-1700)
- 10.0.14986.1000 (Windows 10 Build 160101.0800)
- 10.0.14997.1001 (Windows 10 Build 160101.0800)
- 10.0.15002.1001 (Windows 10 Build 160101.0800)
- 10.0.15007.1000 (Windows 10 Build 160101.0800)
- 10.0.15014.1000 (Windows 10 Build 160101.0800)
- 10.0.15019.1000 (Windows 10 RS Pre-Release 170121-1513)
- 10.0.15025.1000 (Windows 10 RS Pre-Release 170127-1750)
- 10.0.15031.0 (Windows 10 RS2 Release 170204-1546)
- 10.0.15042.0 (Windows 10 RS2 Release 170219-2329)
- 10.0.15046.0 (Windows 10 Build 160101.0800)
- 10.0.15048.0 (Windows 10 Build 160101.0800)
- 10.0.15055.0 (Windows 10 Build 160101.0800)
- 10.0.15058.0 (Windows 10 Build 160101.0800)
- 10.0.15061.0 (Windows 10 Build 160101.0800)
- 10.0.15063.0 (Windows 10 Build 160101.0800)
- 10.0.15063.296 (Windows 10 Build 160101.0800)
- 10.0.15063.994 (Windows 10 Build 160101.0800)
- 10.0.15063.1155 (Windows 10 Build 160101.0800)
- 10.0.16179.1000 (Windows 10 Build 160101.0800)
- 10.0.16184.1001 (Windows 10 Build 160101.0800)
- 10.0.16199.1000 (Windows 10 Build 160101.0800)
- 10.0.16215.1000 (Windows 10 Build 160101.0800)
- 10.0.16232.1000 (Windows 10 Build 160101.0800)
- 10.0.16237.1001 (Windows 10 Build 160101.0800)
- 10.0.16241.1001 (Windows 10 Build 160101.0800)
- 10.0.16251.0 (Windows 10 Build 160101.0800)
- 10.0.16251.1000 (Windows 10 Build 160101.0800)
- 10.0.16257.1 (Windows 10 Build 160101.0800)
- 10.0.16257.1000 (Windows 10 Build 160101.0800)
- 10.0.16273.1000 (Windows 10 Build 160101.0800)
- 10.0.16275.1000 (Windows 10 Build 160101.0800)
- 10.0.16278.1000 (Windows 10 Build 160101.0800)
- 10.0.16281.1000 (Windows 10 Build 160101.0800)
- 10.0.16288.1 (Windows 10 Build 160101.0800)
- 10.0.16291.0 (Windows 10 Build 160101.0800)
- 10.0.16294.1 (Windows 10 Build 160101.0800)
- 10.0.16296.0 (Windows 10 Build 160101.0800)
- 10.0.16299.0 (Windows 10 Build 160101.0800)
- 10.0.16299.15 (Windows 10 Build 160101.0800)
- 10.0.16353.1000 (Windows 10 Build 160101.0800)
- 10.0.16362.1000 (Windows 10 Build 160101.0800)
- 10.0.17004.1000 (Windows 10 Build 160101.0800)
- 10.0.17017.1000 (Windows 10 Build 160101.0800)
- 10.0.17025.1000 (Windows 10 Build 160101.0800)
- 10.0.17035.1000 (Windows 10 Build 160101.0800)
- 10.0.17046.1000 (Windows 10 Build 160101.0800)
- 10.0.17063.1000 (Windows 10 Build 160101.0800)
- 10.0.17115.1 (Windows 10 Build 160101.0800)
- 10.0.17128.1 (Windows 10 Build 160101.0800)
- 10.0.17133.1 (Windows 10 Build 160101.0800)
- 10.0.17134.1 (Windows 10 Build 160101.0800)
- 10.0.17723.1000 (Windows 10 Build 160101.0800)
- 10.0.17763.1 (Windows 10 Build 160101.0800)
Confirmed working on:
- Windows Vista Starter (x86 — Service Pack 1 and higher)
- Windows Vista Home Basic
- Windows Vista Home Premium
- Windows Vista Business
- Windows Vista Enterprise
- Windows Vista Ultimate
- Windows Server 2008
- Windows 7 Starter
- Windows 7 Home Basic
- Windows 7 Home Premium
- Windows 7 Professional
- Windows 7 Enterprise
- Windows 7 Ultimate
- Windows Server 2008 R2
- Windows 8 Developer Preview
- Windows 8 Consumer Preview
- Windows 8 Release Preview
- Windows 8
- Windows 8 Single Language
- Windows 8 Pro
- Windows 8 Enterprise
- Windows Server 2012
- Windows 8.1 Preview
- Windows 8.1
- Windows 8.1 Connected (with Bing)
- Windows 8.1 Single Language
- Windows 8.1 Connected Single Language (with Bing)
- Windows 8.1 Pro
- Windows 8.1 Enterprise
- Windows Server 2012 R2
- Windows 10 Technical Preview
- Windows 10 Pro Technical Preview
- Windows 10 Home
- Windows 10 Home Single Language
- Windows 10 Pro
- Windows 10 Enterprise
- Windows Server 2016 Technical Preview
Installation instructions:
- Download latest release binaries and unpack files
- Right-click on
install.bat
and select Run as Administrator - See command output for details
To update INI file:
- Right-click on
update.bat
and select Run as Administrator - See command output for details
To uninstall:
- Go to the directory where you extracted the files
- Right-click on
uninstall.bat
and select Run as Administrator - See command output for details
Удаленные пользователи могут подключаться к своим компьютерам Windows 10 или 11 через службу удаленных рабочих столов (RDP). Достаточно включить удаленный рабочий стол (Remote Desktop), разрешить RDP доступ для пользователя и подключиться к компьютеру с помощью любого клиента удаленного рабочего стола. Однако в десктопных версия Windows есть ограничение на количество одновременных RDP сессии. Разрешается только один активный Remote Desktop сеанс пользователя.
Если вы попробуете открыть вторую RDP сессию, появится предупреждение с запросом отключить сеанс первого пользователя.
В систему вошел другой пользователь. Если вы продолжите, он будет отключен. Вы все равно хотите войти в систему?
Ограничения на количество RDP сессий в Windows
Во всех десктопных версиях Windows 10 и 11 есть ряд ограничений на использование служб удаленного рабочего стола
- Разрешено удаленно подключаться по RDP только к редакциям Windows Professional и Enterprise. В домашних редакциях (Home/Single Language) RDP доступ запрещен;
- Поддерживается только одно одновременное RDP подключение. При попытке запустить вторую RDP-сессию, пользователю будет предложено завершить активный сеанс;
- Если пользователь работает за консолью компьютера (локально), то при удаленном подключении по RDP, его локальный сеанс будет отключен (заблокирован). Также завершается и удаленный RDP сеанс, если пользователь входит в Windows через консоль компьютера.
Ограничение на количество одновременных RDP подключений в Windows является не техническим, но программным и лицензионным. Таким образом Microsoft запрещает создавать терминальный RDP сервер на базе рабочей станции для одновременной работы нескольких пользователей.
Если ваши задачи требуют развертывание терминального сервера, Microsoft предлагает пробрести Windows Server (по умолчанию разрешает 2 активных RDP подключения). Если вам нужно большее количество одновременных сессий пользователей, нужно приобрести лицензии RDS CAL, установить и настроить роль Remote Desktop Session Host (RDSH) или полноценную RDS ферму.
Технически любая редакция Windows при наличии достаточного ресурсов оперативной памяти и CPU может обслуживать одновременную работу нескольких десятков удаленных пользователей. В среднем на одну RDP сессию пользователя требуется 150-200 Мб памяти (без учета запускаемых приложений). Т.е. максимальное количество одновременных RDP сессий в теории ограничивается только ресурсами компьютера.
В этой статье мы покажем три способа убрать ограничение на количество одновременных RDP подключений в Windows 10 и 11:
- Использование RDP Wrapper
- Модификации системного файла termsrv.dll
- Апгрейд до редакции Windows 10/11 Enterprise for virtual desktops (multi-session)
режде, чем продолжить, проверьте что в настройках Windows включен протокол Remote Desktop.
- Откройте панель Settings -> System —> Remote Desktop -> включите опцию Enable Remote Desktop
- ;
- Либо воспользуйтесь классической панель управления: выполните команду SystemPropertiesRemote -> Перейдите на вкладку Remote Settings (Удаленный доступ), включите опцию Allow remote connection to this computer (Разрешить удалённые подключения к этому компьютеру).
RDP Wrapper: разрешить несколько RDP сеансов в Windows
Open-source утилита RDP Wrapper Library позволяет разрешить конкурентные RDP сессии в Windows 10/11 без замены системного файла termsrv.dll.
RDP Wrapper работает в качестве прослойки между менеджером управления службами Service Control Manager, SCM) и службой терминалов (Remote Desktop Services). RDP Wrapper не вносит никаких изменений в файл termsrv.dll, просто загружая termsrv с изменёнными параметрами..
Вы можете скачать RDP Wrapper из репозитория GitHub: https://github.com/binarymaster/rdpwrap/releases (последняя доступная версия RDP Wrapper Library v1.6.2). Утилита не обновляется с 2017 года, но ее можно использовать на всех билдах Windows 10 и 11. Для работы утилиты в современных версиях Windows достаточно обновить конфигурационный файл rdpwrap.ini.
Архив RDPWrap-v1.6.2.zip содержит несколько файлов:
- RDPWinst.exe —программа установки/удаления RDP Wrapper Library;
- RDPConf.exe — утилита настройки RDP Wrapper;
- RDPCheck.exe — Local RDP Checker — утилита для проверки RDP доступа;
- install.bat, uninstall.bat, update.bat — пакетные файлы для установки, удаления и обновления RDP Wrapper.
Чтобы установить RDPWrap, запустите файл install.bat
с правами администратора.
После окончания установки запустите RDPConfig.exe.
Скорее всего сразу после установки утилита покажет, что RDP wrapper запущен (Installed, Running, Listening), но не работает. Обратите внимание на красную надпись. Она сообщает, что данная версий Windows 10 (ver. 10.0.19041.1949) не поддерживается ([not supported]).
Причина в том, что в конфигурационном файле rdpwrap.ini отсутствует секция с настройками для вашего версии (билда) Windows. Актуальную версию файла rdpwrap.ini можно скачать здесь https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Вручную скопируйте содержимое данной страницы в файл «C:\Program Files\RDP Wrapper\rdpwrap.ini». Или скачайте файл с помощью PowerShell командлета Invoke-WebRequest (предварительно нужно остановить службу Remote Desktop):
Stop-Service termservice -Force
Invoke-WebRequest https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini -outfile "C:\Program Files\RDP Wrapper\rdpwrap.ini"
Перезагрузите компьютер, запустите утилиту RDPConfig.exe. Проверьте, что в секции Diagnostics все элементы окрашены в зеленый цвет, и появилось сообщение [Fully supported]. На скриншоте ниже показано, что RDP Wrapper с данным конфигом успешно запущен в Windows 11 22H2.
Теперь попробуйте установить несколько одновременных RDP сессий с этим компьютером под разными пользователями (воспользуйтесь любым RDP клиентом: mstsc.exe, RDCMan, mRemoteNG и т.д.).
В этой статье мы расскажем о приложении RDP Wrapper, которая является альтернативой службе удаленных рабочих столов в Windows. Она поможет обойти ограничения, установленные Microsoft, и реализовать полноценный сервер удаленного рабочего стола в любой версии Windows, включая домашние. Мы рассмотрим, как установить и настроить RDP Wrapper, а также как добавить пользователей для доступа к удаленному рабочему столу.
Приобрести оригинальные ключи активации Windows всегда можно у нас в каталоге от 1099 ₽
Возможности RDP Wrapper:
— Полноценный RDP сервер (отсутствует в домашних редакциях Windows);
— Возможность одновременной работы нескольких пользователей через удаленный рабочий стол;
— Поддержка работы с несколькими мониторами.
Правомерность использования приложения
Использование данного приложения является спорным с точки зрения правомерности, поэтому применять ее следует на свой страх и риск.
Скачать приложение можно с официального GitHub репозитория. В наличии как MSI установщик, так и zip архив.
Скачать MSI установщик можно с нашего сервера напрямую.
Установка и настройка
Для установки доступны MSI файл и zip архив. Мы рассмотрим установку приложения из zip архива.
1. Скачиваем и распаковываем архив. После распаковки должны появиться следующие файлы:
— install.bat — установка RDP Wrapper;
— RDPCheck.exe — проверка работы сервера удаленного рабочего стола;
— RDPConf.exe — настройка RDP Wrapper;
— RDPWInst.exe — установка RDP Wrapper;
— uninstall.bat — удаление RDP Wrapper;
— update.bat — обновление RDP Wrapper из интернета.
2. Запускаем файл install.bat с правами администратора.
Появится черное окно командной строки, и при успешной установке будет сообщение Successfully installed. Для закрытия окна нажмите любую клавишу.
3. Проверка работы удаленного рабочего стола. Запустите утилиту RDPCheck.exe, чтобы проверить подключение к локальному серверу удаленного рабочего стола.
Настройка пользователей для доступа к удаленному рабочему столу
По умолчанию доступ к удаленному рабочему столу имеют только пользователи, которые состоят в группе «Администраторы». Чтобы пользователь без прав администратора мог получить доступ к удаленному рабочему столу, его нужно добавить в группу «Пользователи удаленного рабочего стола».
Однако в домашних редакциях Windows данная группа отсутствует, но это можно исправить, воспользовавшись редактором реестра с правами системы.
1. Скачиваем утилиту PsTools, доступную на сайте Microsoft. Так же скачать PsTools можно напрямую с нашего сервера.
2. Скачиваем архив с нужным reg файлом.
3. Распаковываем архив PsTools и используем файл PsExec.exe для запуска редактора реестра от имени системы.
4. Запускаем командную строку с правами администратора и вводим команду для запуска редактора реестра:
C:\Users\User\Desktop\PsExec.exe -s -i regedit
5. Импортируем reg файл. В открывшемся редакторе реестра переходим в меню «Файл» — «Импорт», и выбираем скачанный файл реестра. Появится сообщение о том, что значения успешно внесены в реестр.
В случае, если все прошло успешно, появится соответствующее сообщение — Содержащиеся в RemoteDesktopUsersGroup разделы и значения успешно внесены в реестр.
6. Добавляем пользователя в группу пользователей удаленного рабочего стола:
В командной строке выполните команду (с правами администратора):
net localgroup "Remote Desktop Users" [ПОЛЬЗОВАТЕЛЬ] /add
где [ПОЛЬЗОВАТЕЛЬ] — имя пользователя в системе.
После выполнения этих шагов пользователь сможет подключаться к удаленному рабочему столу.
Лицензионный ключ активации Windows от
Удаленные пользователи могут подключаться к своим компьютерам с ОС Windows 10 и Windows 11 через службы удаленных рабочих столов (RDP). Достаточно включить RDP в настройках устройства и подключиться к компьютеру с помощью любого клиента удаленного рабочего стола, такого как MSTSC. Но существует ограничение на количество одновременных сеансов RDP – одновременно может работать только один удаленный пользователь. Если вы попытаетесь открыть второй сеанс RDP, появится предупреждение с просьбой отключить сеанс первого пользователя.
Изменения от 04.07.2023 г.
Настройка службы RDP на Windows 10
RDP работает только на Windows 10/11 Pro, в Home версии отключены нужные системные компоненты. Кроме этого, потребуется защитить паролем вашу учетную запись.
Включение доступа и добавление пользователей.
Откройте Пуск и нажмите на шестеренку Параметры.
Откройте раздел с настройкой системы.
Далее перейдите к настройке удаленного рабочего стола.
Включить удаленный рабочий стол.
Перейти в настройки электропитания, отключить переход компьютера в спящий режим.
Далее необходимо пользователей, которым будет предоставлен доступ к RDP По умолчанию доступ предоставлен администратору компьютера.
Добавляем еще пользователей.
Если вы попытаетесь открыть второй сеанс RDP, появится предупреждение с просьбой отключить сеанс первого пользователя.
На самом деле, количество одновременных подключений RDP в системе Windows ограничено лицензией, а не каким-либо техническим аспектом. Таким образом, это ограничение не позволяет создать терминальный RDP-сервер на базе компьютера с системой Windows 10/11. Логика компании Microsoft проста, если вам нужен сервер терминалов – купите лицензию Windows Server, RDS CALs, установите и настройте роль сервера сеансов удаленного рабочего стола.
Но технически, любая версия Windows, с достаточным объемом оперативной памяти может поддерживать одновременную работу нескольких удаленных пользователей. В среднем, для одного сеанса пользователя, требуется около 200 МБ оперативной памяти (без учета запущенных приложений). Т.е. максимальное количество одновременных сеансов RDP теоретически ограничено только компьютерными ресурсами.
Рассмотрим два способа разрешить одновременные RDP-подключения в Windows 10/11:
- с помощью RDP Wrapper
- исправления библиотеки termsrv.dll
RDP Wrapper
Проект RDP Wrapper – ПО с открытым исходным кодом, позволяет включить несколько сеансов RDP в Windows 10 без замены файла termsrv.dll. Этот инструмент работает как связующее звено между SCM (Service Control Manager) и службами удаленного рабочего стола. RDPWrap позволяет включить не только поддержку нескольких одновременных RDP-подключений, но и создать RDP-сервер в Windows Home. RDP Wrapper не вносит никаких изменений в termsrv.dll файл, это просто загрузка библиотеки termsrv с измененными параметрами.
Таким образом, RDPWrap будет работать даже в случае изменения файла termsrv.dll. Это позволяет не бояться обновлений Windows.
Вы можете загрузить RDP Wrapper из репозитория GitHub https://github.com/binarymaster/rdpwrap/releases (последняя доступная версия библиотеки RDP-оболочки — v1.6.2).
В RDPWrap-v1.6.2.zip содержит несколько файлов:
- RDPWinst.exe — библиотека-оболочка RDP для установки/удаления программы
- RDPConf.exe — инструмент настройки оболочки RDP
- RDPCheck.exe — утилита проверки RDP (Local RDP Checker)
- Install.bat, uninstall.bat, update.bat — пакетные файлы для установки, удаления и обновления оболочки RDP
Для установки оболочки необходимо запустить файл Install.bat с правами администратора.
RDPWrap не работает в Windows 10
После завершения установки запустите RDPConfig.exe . Скорее всего, сразу после установки инструмент покажет, что оболочка RDP запущена (установлена, запущена), но не работает. Обратите внимание на красное предупреждение [not supported]. В нем сообщается, что эта версия Windows 10 (версия 10.0.19041.1387) не поддерживается оболочкой RDP.
Дело в том, что для каждой версии Windows 10/11 должно быть описание в конфигурационном файле rdpwrap.ini. В текущем конфигурационном файле просто нет никаких настроек для вашей сборки Windows.
Текущую версию файла rdpwrap.ini можно загрузить здесь: https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Во всех источниках в интернете находятся советы, что необходимо скопировать новый файл rdpwrap.ini в “C:\Program Файл Files\RDP Wrapper\rdpwrap.ini” и перезапустить службу TermService. Но у меня это ни разу не получилось, ввиду того, что при перезапуске службы, оригинальный файл rdpwrap.ini восстанавливался на место нового.
Немного поискав решение этой проблемы, наткнулся на файл автоматического обновления rdpwrap.ini:
- С сайта GitHub
- С нашего сайта
Необходимо скопировать файлы RDPWinst.exe, RDPConf.exe, RDPCheck.exe и autoupdate.bat в каталог C:\Program Файл Files\RDP Wrapper\ и запустить autoupdate.bat.
После завершения установки запустите RDPConfig.exe
Все работает!
Обновление Параметров Групповой политики
Количество подключений к компьютеру может быть ограничено правилами групповой политики.
В этом случае вы можете использовать редактор локальной групповой политики (gpedit.msc), чтобы включить политику “Ограничить количество подключений” в разделе Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Подключения –> Ограничить количество подключений.
Измените его значение на 999999.
Модификация Termsrv.dll
Второй, более трудозатратный метод – изменение файла Termsrv.dll.
для этого нужно сделать копию файла, затем нужно стать владельцем файла.
Для начала, остановите службу удаленного рабочего стола (TermService) из командной строки:
Net stop TermService
Чтобы изменить владельца файла с TrustedInstaller на локальную группу администраторов нужно выполнить команду:
takeown /F c:\Windows\System32\termsrv.dll /A
Теперь предоставьте локальной группе администраторов разрешения на полный контроль над termsrv.dll файл с использованием icacls.exe:
icacls c:\Windows\System32\termsrv.dll /grant Администраторы:F
Затем откройте termsrv.dll файл с использованием любого шестнадцатеричного редактора (например, WinHex). В зависимости от вашей сборки Windows вам необходимо найти и заменить строку в соответствии с приведенной ниже таблицей:
Версия Windows | Строка поиска |
Windows 11 RTM (21H2 – 22000.258) |
39 81 3C 06 00 00 0F 84 4F 68 01 00 |
Windows 10 x64 22H2 19045.2486 |
39 81 3C 06 00 00 0F 84 DB 61 01 00 |
Windows 10 x64 21H2 |
39 81 3C 06 00 00 0F 84 85 45 01 00 |
Windows 10 x64 21H1 |
39 81 3C 06 00 00 0F 84 2B 5F 01 00 |
Windows 10 x64 20H2 |
39 81 3C 06 00 00 0F 84 21 68 01 00 |
Windows 10 x64 2004 |
39 81 3C 06 00 00 0F 84 D9 51 01 00 |
Windows 10 x64 1909 |
39 81 3C 06 00 00 0F 84 5D 61 01 00 |
Windows 10 x64 1903 |
39 81 3C 06 00 00 0F 84 5D 61 01 00 |
Windows 10 x64 1809 |
39 81 3C 06 00 00 0F 84 3B 2B 01 00 |
Windows 10 x64 1803 |
8B 99 3C 06 00 00 8B B9 38 06 00 00 |
Windows 10 x64 1709 |
39 81 3C 06 00 00 0F 84 B1 7D 02 00 |
Строка замены
B8 00 01 00 00 89 81 38 06 00 00 90
Данную таблицу я нашел на просторах интернета. Проверка данного метода в полевых условиях привела к тому, что я не нашел данную последовательность в своем файле termsrv.dll.
Но если понять суть, то все решается достаточно легко. Необходимо искать последовательность: 39 81 3C 06 00 00 0F 84, последние 4 байта не особо важны.
Я нашел последовательность 39 81 3C 06 00 00 0F 84 73 55 01 00
Замена на
B8 00 01 00 00 89 81 38 06 00 00 90
Обновление от 27.01.2023 г.
Вышло новое обновление Windows 10 22H2 версия сборки: 19045.2486 и 19045.2604
Версия файла termsrv.dll: 10.0.19041.2075
Открываем файл в WinHex, находим исходную последовательность: 39 81 3C 06 00 00 0F 84 85 45 01 00.
Меняем на строку замены.
Обновление от 04.07.2023 г.
Скачать измененный файл termsrv.dll для конкретной версии Windows 10 можно в данной таблице.
Версия Windows | Скачать termsrv.dll |
Windows 10 x64 22H2 сборка 19045.2486 и 19045.2604 |
termsrv.dll |
Windows 10 x64 22H2 сборка 19045.3086 |
termsrv.dll |
Сохраните модифицированный файл и запустите службу TermService.
Если что-то пойдет не так, остановите службу и замените измененный termsrv.dll файл с оригинальной версией.
В моем случае модификация файла помогла включить несколько сеансов RDP.
Преимущество метода включения нескольких сеансов RDP в Windows 10 или 11 путем замены termsrv.dll файл заключается в том, что антивирусы на него не реагируют, в отличие от RDPWrap, который обнаруживается многими антивирусами как вредоносное ПО.
Основным недостатком является то, что вам придется вручную редактировать termsrv.dll файл при каждом обновлении сборки Windows 10/11. И если вы используете RDPWrap, вам также потребуется обновить файл rdpwrap.ini после установки обновлений Windows.
Remote Desktop Protocol (RDP) is a popular technique for accessing Windows computers remotely. By default, Windows 10 and 11 do not support simultaneous remote desktop connections from multiple users. However, there are scenarios when multiple users need to connect to a single machine simultaneously. That’s where RDP Wrapper comes into action.
In this article, we will uncover all about RDP Wrapper, including its working principle and usage steps.
- Part 1: What is RDP Wrapper?
- Part 2: How to Get RDP Wrapper?
- Part 3: How to Configure and Enable RDP Wrapper?
- Part 4: Common Issues When Using RDP Wrapper
- Part 5: Is RDP Wrapper Safe to Use?
- Part 6: Better Alternative Solution to RDP Wrapper
Part 1. What is RDP Wrapper?
RDP Wrapper is an open-source remote control utility that offers two main functionalities. First, it enables Remote Desktop Protocol (RDP) on Windows versions that do not support it by default. Second, it enables simultaneous multiple RDP connections on the system, i.e., multiple users can access the single remote system altogether.
Simply put, RDP Wrapper changes the way RDP service operates and provides more flexibility and control over remote access sessions.
Importance of Enabling Multiple RDP Sessions on Windows
Before discussing the working principle of RDP Wrapper, it is important to understand the importance of enabling multiple RDP sessions on Windows. Some of the key reasons include:
- Collaborative Work: Multiple RDP sessions make it easy for multiple users to collaborate on the same system.
- Remote Access to a Central Machine: Teams can remotely access a central machine, such as a development or testing environment.
- Resource Optimization: Multiple users can share the same powerful workstation, leading to optimized hardware usage and cost-effectiveness.
- Better Training: Multiple RDP sessions make it easy to provide real-time training to multiple users.
In short, there are many reasons why Windows users may want to enable multiple RDP sessions using RDP Wrapper on Windows 11/10.
How RDP Wrapper Works
To allow concurrent RDP sessions, RDP Wrapper alters the system files. It wraps around the native RDP service and expands its capabilities.
Basically, the RDP Wrapper acts as a layer between the Terminal Services and Service Control Manager and keeps the original termsrv.dll file unchanged. Furthermore, this also allows it to retain the changes even against Windows Update. Once the RDP Wrapper is configured, the underlying operating system can accept multiple RDP connections at the same time.
Part 2. How to Get RDP Wrapper?
Now that the basics of RDP Wrapper are clear, let’s talk about how to download and install RDP Wrapper on Windows 11/10.
Steps to Download the RDP Wrapper Library from a Trusted Source
- Step 1.Go to the RDP Wrapper GitHub page.
- Step 2.Download the latest RDP Wrapper Library version.
- Step 3.Once downloaded, unzip the downloaded file.
Steps to Install RDP Wrapper on Windows
- Step 1.In the downloaded folder, right-click the install bat file and click Run as administrator.
- Step 2.Wait for the RDP Wrapper to install. You see the confirmation messages as follows:
Verify Installation
Although the RDP Wrapper seems to be installed, you should check its status to ensure that it is working. To do so, open the RDPConfig.exe file from the same downloaded folder and check that all the Diagnostic section elements are green.
Part 3. How to Configure and Enable RDP Wrapper?
After installing the RDP Wrapper Library, the next thing to do is configure and enable RDP Wrapper. Follow the below steps to do so:
- Step 1.Go to Settings > System > Remote Desktop and toggle on Remote Desktop to enable it.
- Step 2.Run the RDPCheck.exe file.
- Step 3.Ask two remote users to use the Remote Desktop client, enter your IP address, and create a remote connection.
If both users are successful in making the connection, it means RDPWrapper is working perfectly.
Part 4. Common Issues When Using RDP Wrapper
RDP Wrapper can sometimes cause issues. Here are the two common issues who might face when using RDP Wrapper on Windows 11 or 10:
1.RDP Wrapper Not Supported
You may see the RDP Wrapper Not Supported status when you open the RDPConfig.exe file. This means that the RDP Wrapper is not working.
To fix that, copy-paste the content from the below link to the rdpwrap.ini file:
https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Afterward, Restart the computer and reopen the RDPConfig.exe tool to check the status. It should be all green now.
2.Listener State: Not Listening
When you update Windows, it can modify the termsrv.dll file. Due to that, the RDP Wrapper configuration becomes incompatible.
To fix it, follow the below steps:
- Step 1.Go back to the RDP Wrapper GitHub page and download the latest rdpwrap.ini file.
- Step 2.Go to C:\Program Files\RDP Wrapper and replace the existing rdpwrap.ini file.
- Step 3.Open the Command Prompt as Administrator and run the below commands:
net stop termservice
net start termservice
It will restart Remote Desktop Protocol Services and apply the new RDP Wrapper configuration. If the error still remains, you can reinstall RDP Wrapper on Windows 11/10.
Tips for Resolving Connection Issues
You may sometimes face connection issues with the RDP Wrapper. In this perspective, below are some useful tips to resolve connection issues:
- Ensure that the firewall allows remote desktop connections. To check that, go to Control Panel > System and Security > Windows Defender Firewall > Allow an app or feature through Windows Defender Firewall > Remote Desktop.
- Make sure users are entering the correct computer ID address to create a remote connection.
- Update your Windows system to keep your system compatible with RDP Wrapper.
- Reinstall the RDP Wrapper if you struggle with unsolvable connection issues.
Part 5. Is RDP Wrapper Safe to Use?
There is a continuous debate on whether RDP Wrapper is safe to use. Technically, it does come with some potential security risks, as follows:
- Unauthorized Access: RDP Wrapper alters the system files and enables multiple RDP sessions. This increases the possibility of unauthorized access to the system.
- Malware Attack: If you download the RDP Wrapper from an unknown source, it may install malware in the system.
- Licensing Complications: Bypassing licensing restrictions and modifying system files may violate Microsoft’s terms of service (TOS) or End-User License Agreement (EULA).
- Unreliability: RDP Wrapper may stop working after Windows updates.
In short, RDP Wrapper does have security risks, so its use mainly depends on the user’s preference.
Best Practices for Securing RDP Connections
You can reduce vulnerabilities with RDP connections by following best practices, as follows:
- Use Strong Passwords: Ensure all user accounts have strong passwords.
- Enable Network Level Authentication: Enable NLA to add an extra layer of authentication before establishing a remote desktop session.
- Use VPN: If possible, use a VPN to encrypt remote connections.
- Update Regularly: Regularly update your Windows system and RDP Wrapper software to have the latest security patch installed.
- Limit Access Through Firewall: Make the firewall only approve remote access connections from known user accounts (IP addresses).
Overall, it is all about being strategic in identifying loopholes and securing RDP connections.
Part 6. Better Alternative Solution to RDP Wrapper
RDP Wrapper seems an effective way to have concurrent remote desktop connections, but it comes with complicated configurations and security risks. So, what if we tell you that there is a better alternative to RDP Wrapper for Windows 11 and 10 that is more reliable and secure? This tool is known as AirDroid Remote Support.
AirDroid Remote Support is modernized and advanced remote access software. It provides a straightforward way to remote control desktops and smartphones, along with various features to enhance remote support and management.
With AirDroid Remote Support, you get a centralized dashboard from where you can access all the enrolled systems. The key features of AirDroid Remote Support are as follows:
- Remote access to various devices in real-time, including unattended devices.
- Two-way file transfer.
- Text messaging or voice calls for instant communication during remote sessions.
- Controllable clipboard and keyboard.
- Record of all remote sessions.
- Assign permissions and policies for users, teams, and devices.
Today, AirDroid Remote Support has over 1 million global customers and 20+ million installations. All these attributes make it a reliable and powerful remote access software.
Conclusion
RDP Wrapper is an excellent utility for concurrent remote sessions on a single system. With the right configuration, you can bypass the restrictions of default RDP and have more flexibility. However, this flexibility also comes with security risks and technical complications. To avoid that all and have the best remote access with feature-rich functionalities, install AirDroid Remote Support and enjoy a secure and efficient remote control experience.