Error Remote Desktop is disabled because the maximum number of connections has been exceeded occurs when attempting the third and subsequent RDP connections to a Windows machine without licensing Terminal Services. The problem is solved by modifying the system library termsrv.dll using a patch Universal Termsrv.dll Patch - an unofficial tool that bypasses the limit of 2 simultaneous sessions. This method works on Windows 10/11 Pro/Enterprise, as well as on server editions 2016-2022, but requires strict adherence to instructions and consideration of the risks of violating the Microsoft license agreement.
The patch makes changes to the license verification mechanism, allowing an unlimited number of users to connect (theoretically, until the OS resources are exhausted). However, after Windows updates or file replacement termsrv.dll through DISM/SFC the limitation is returned. Below are the current versions of the patch, installation steps, and typical errors (for example, 0x1104 or 0x204), as well as legal alternatives for organizations.
What is Universal Termsrv.dll Patch and how does it work
Patch Universal Termsrv.dll Patch is a utility that modifies a system file C:\Windows\System32\termsrv.dll, responsible for processing RDP connections. In the original version of Windows (except Server with RDS role) this file blocks the third connection, giving an error Maximum number of connections exceeded. The patch replaces the section of code responsible for checking licenses with a βstubβ that always returns the status license confirmed.
Technically, the process comes down to:
- π Search for signatures in
termsrv.dll(unique byte sequences responsible for the session limit). - π Replacing these signatures with patched values (for example,
75 30βEB 30to bypass the check). - π Reboot the service
TermServiceor systems for applying changes.
Important: the patch does not add new RDS features (for example, RemoteApp or Gateway), but only removes the artificial limitation. For correct operation of several users at the same time, the following is required:
- π₯οΈ Sufficient amount of RAM and CPU (minimum 2 GB RAM + 1 core per user).
- π Static IP address or dynamic DNS update (if connections come from outside).
- π Disabled mode Network Level Authentication (NLA) in the RDP settings (otherwise the patch may not work).
β οΈ Attention: Using a patch violates Microsoft license agreement (section 4.b). Legal deployment of RDP infrastructure requires purchase RDS CAL (Client Access License) or use Windows Server with Remote Desktop Services role.
Patch compatibility with Windows versions
Current versions Universal Termsrv.dll Patch (for example, from the developer DeepXW or RDPWrap) support the following systems:
| Windows version | Patch support | Features | Latest working builds |
|---|---|---|---|
| Windows 10 1809β22H2 | β Yes | Requires shutdown Windows Defender during installation. |
v1.6.2 (2023) |
| Windows 11 21H2β23H2 | β Partially | Manual edits may be required termsrv.dll after updates. |
v1.7.1 (beta) |
| Windows Server 2016 | β Yes | Works only on Desktop Experience (not on Server Core). | v1.5.3 |
| Windows Server 2019/2022 | β οΈ Limited | Requires rollback of updates KB5005624 or KB5005619. | v1.6.0 |
To check if a patch is compatible with your Windows build:
- Open
Win + Rβ enterwinverβ remember the version and build (e.g. 22621.1105). - Download RDPWrap (alternative tool) and run
RDPConf.exeβ the program will show the support status. - If the status indicates
not supported, check for updates in telegram channel RDPWrap.
Step-by-step instructions for installing the patch
Before you start necessarily:
- π Create a system restore point (
Control Panel β Recovery β Set up system recovery). - π‘οΈ Disable your antivirus (for example, Kaspersky or Bitdefender may block changes to
termsrv.dll). - π₯ Download the patch from a trusted source (we recommend GitHub or Woshub).
Instructions for Universal Termsrv.dll Patch v1.6+:
- Unpack the archive with the patch into a folder
C:\RDP-Patch. - Run
Command Promptas administrator and run:net stop TermServicetakeown /f C:\Windows\System32\termsrv.dll
icacls C:\Windows\System32\termsrv.dll /grant Administrators:F
copy C:\RDP-Patch\termsrv.dll C:\Windows\System32\termsrv.dll
net start TermService - Restart your computer.
Run services.msc and make sure the service Remote Desktop (TermService) works|Connect from 3+ devices at the same time (use different accounts)|Check Windows Event Log (eventvwr.msc β Windows Logs β System) for errors from TermDD|Open RDPConf.exe (if you are using RDPWrap) and make sure that the status [fully supported]
-->
If RDP does not work after reboot:
- π§ Check if the file has been reset
termsrv.dll(compare date of change inSystem32with the patch date). - π Repeat steps 1β3, after deleting the original
termsrv.dll(it may be blockedTrustInstaller). - π Make sure that
gpedit.msc β Computer Configuration β Administrative Templates β Windows Components β Remote Desktop Services β Remote Desktop Session Host β Restrictionsdisabled ruleLimit the number of connections.
DISM /Online /Disable-Windows-Corruption-Protection
Attention: This will weaken the system's protection against damage.
-->
Common mistakes and their solutions
After installing the patch, errors may occur due to version incompatibility, file blocking, or service conflicts. Below are common error codes and how to resolve them:
| Error code | Reason | Solution |
|---|---|---|
0x1104 |
Service TermService won't start after the patch. |
Check integrity termsrv.dll (compare the hash with the original). Restore the file from your backup. |
0x204 |
The patch is incompatible with the current build of Windows. | Update the patch or roll back the system to the previous build. |
0x4 or 0x5 |
The file cannot be accessed termsrv.dll. |
Run Command Prompt on behalf of SYSTEM (via PsExec) and repeat the installation. |
0x1326 |
Corrupted RDP registry (keys HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server). |
Import default settings from RDP-Patch\reset_registry.reg. |
If, after applying the patch, RDP sessions are broken after 1β2 minutes:
- π Check your settings
Group Policy:gpedit.msc β Computer Configuration β Administrative Templates β Windows Components β Remote Desktop Services β Remote Desktop Session Host β Time LimitsDisable options
Set a time limit for active RDP sessionsandSet a time limit for disconnected sessions. - π Make sure that
Control Panel β Power Options β Power Plan Settings β Advanced SettingsdisabledSleep after inactivity.
How to restore the original termsrv.dll if the patch is broken
1. Download the original file for your version of Windows from the website Microsoft Update Catalog (search by update KB number).
2. Replace the damaged file via DISM:
DISM /Online /Add-Package /PackagePath:C:\path\to\update.msu
3. Alternatively use sfc /scannow, but this will return all system files to the original.
Risks and consequences of using the patch
Despite the convenience Universal Termsrv.dll Patch has critical disadvantages:
- π¨ Violation of the license agreement: Microsoft may block the account or activate protection mechanisms (for example, Windows Genuine Advantage).
- π‘οΈ Security Vulnerabilities: modified
termsrv.dllmay contain backdoors or be a target for exploits (e.g. BlueKeep). - π Conflicts with updates: the patch is reset after installing monthly Windows updates (especially critical ones, for example, KB5001330).
- π System instability: random session breaks and errors are possible
0x00000050(PAGE_FAULT_IN_NONPAGED_AREA) or service hangsTermService.
For organizations, the risks are aggravated by:
- π Audit and fines: When checking Microsoft licenses (for example, via Software Asset Management) using the patch is equivalent to piracy.
- π Impossibility of certification: systems with the patch will not pass the standards audit ISO 27001 or PCI DSS.
β οΈ Attention: In 2022, Microsoft began blocking accounts using unlicensed RDP solutions through a mechanism Windows Activation Technologies. If a modifiedtermsrv.dllthe system can go into modeUnsupported Hardwarewith watermarks on the desktop.
Legal alternatives to the patch
For organizations and users who require more than 2 simultaneous RDP connections, there are legal solutions:
| Solution | Cost | Features | Link |
|---|---|---|---|
| Windows Server + RDS CAL | from $100 per license | Full infrastructure with support RemoteApp and Gateway. | Microsoft VLSC |
| Azure Virtual Desktop | from $7/user/month | Cloud solution with scalability and built-in security. | Azure AVD |
| Parallels RAS | from $99/year | Supports not only RDP, but also application publishing (similar to Citrix). | Parallels |
| ThinLinc | Free for 10 users | Open-source solution based on Linux, but with support for Windows clients. | ThinLinc |
Free alternatives for home users:
- π₯οΈ Chrome Remote Desktop: up to 2 simultaneous connections, but without time limits.
- π AnyDesk/TeamViewer: Free for non-commercial use (device limit).
- π§ X2Go: open source software for remote access to Linux/Windows via X11.
If you need more than 2 RDP sessions once (for example, for testing), use virtual machines with Windows 10 Multi-Session in free Azure (12 months free).
How to protect yourself from patch reset after Windows updates
Main problem Universal Termsrv.dll Patch β resetting changes after installing monthly updates (especially Cumulative Updates). To minimize risks:
- Postpone updates:
- π
B Windows 10/11 Pro:
Settings β Update & security β Advanced options β Pause updates for 7 days(maximum 35 days). - π§ B Windows Server: use
gpedit.msc β Computer Configuration β Administrative Templates β Windows Components β Windows Update β Configure automatic updatesβ select2 - Notify about downloading and installation.
- π
B Windows 10/11 Pro:
- Eliminate
termsrv.dllfrom defense:
Attention: This will weaken the system's defenses against malicious changes.Takeown /f C:\Windows\System32\termsrv.dllicacls C:\Windows\System32\termsrv.dll /inheritance:r /grant:r Administrators:(F) - Automate patch reapply:
- π€ Create
.bat-script with commands from the "Step-by-step instructions" section and add it toTask Schedulerto start after each update. - π€ Use RDPWrap β it automatically checks the integrity of the patch and restores it.
- π€ Create
If the update is already installed and the patch has been reset:
- Check update history (
Settings β Update & Security β View update history). - Uninstall the latest update via
Control Panel β Programs β View installed updates. - Block the re-installation of the problematic update using Wushowhide.
List of patch breaking updates (2023β2026)
- Windows 10: KB5001330, KB5005624, KB5012170
- Windows 11: KB5007262, KB5014668
- Windows Server 2019/2022: KB5005619, KB5015814
FAQ: Frequently asked questions about Universal Termsrv.dll Patch
β The patch stopped working after updating Windows. How to return functionality?
1. Uninstall the latest update via Control Panel β Programs β View installed updates.
2. Reapply the patch (see the "Step-by-step instructions" section).
3. Block the problematic update using Wushowhide.
4. If the patch does not apply, check if the signature has changed termsrv.dll in a new Windows build (update the patch version).
β Can the patch be used on Windows Server Core?
No. Windows Server Core does not support RDP GUI, so the patch will not work. For Server Core use:
- π PowerShell Remoting (
Enable-PSRemoting). - π₯οΈ Remote administration via RSAT.
- π Web interfaces like Adminer or Cockpit.
β How to check how many users are connected to RDP?
Open Command Prompt and do:
query useror
qwinsta
For real-time monitoring use:
perfmon /res
In the section Remote Desktop active sessions, connection time and status are displayed.
β The patch works, but sessions are terminated after 5 minutes. How to fix it?
The problem is related to the Group Policy settings:
- Open
gpedit.msc. - Go to
Computer Configuration β Administrative Templates β Windows Components β Remote Desktop Services β Remote Desktop Session Host β Time Limits. - Disable options:
Set a time limit for active RDP sessionsSet a time limit for disconnected sessions
If the problem persists, check your power settings (disable sleep mode).
β Is it safe to use the patch on a production server?
No. Risks include:
- π¨ Blocking a Microsoft account when auditing licenses.
- π‘οΈ Vulnerabilities in modified
termsrv.dll(for example, CVE-2019-0708). - π Instability during updates (blue screens are possible
CRITICAL_PROCESS_DIED).
For production environments we recommend:
- π Legal RDS CAL or Azure Virtual Desktop.
- π₯οΈVirtualization via Hyper-V with distribution of individual VMs to users.