Удаленные пользователи могут подключаться к своим компьютерам Windows 10 или 11 через службу удаленных рабочих столов (RDP). Достаточно включить удаленный рабочий стол (Remote Desktop), разрешить RDP доступ для пользователя и подключиться к компьютеру с помощью любого клиента удаленного рабочего стола. Однако в десктопных версия Windows есть ограничение на количество одновременных RDP сессии. Разрешается только один активный Remote Desktop сеанс пользователя.
Если вы попробуете открыть вторую RDP сессию, появится предупреждение с запросом отключить сеанс первого пользователя.
В систему вошел другой пользователь. Если вы продолжите, он будет отключен. Вы все равно хотите войти в систему?
В английской версии предупреждение такое:
Another user is signed in. If you continue, they’ll be disconnected. Do you want to sign in anyway?
Ограничения на количество 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"
alert] Можно создать задание планировщика для проверки изменений в файле rdpwrap.ini и его автоматического обновления [/alert]
На данном скриншоте видно, что на компьютере установлена свежая версия файла rdpwrap.ini (Updated=2023-06-26).
Перезагрузите компьютер, запустите утилиту RDPConfig.exe. Проверьте, что в секции Diagnostics все элементы окрашены в зеленый цвет, и появилось сообщение [Fully supported]. На скриншоте ниже показано, что RDP Wrapper с данным конфигом успешно запущен в Windows 11 22H2.
Теперь попробуйте установить несколько одновременных RDP сессий с этим компьютером под разными пользователями (воспользуйтесь любым RDP клиентом: mstsc.exe, RDCMan, mRemoteNG и т.д.).
Можете проверить что на компьютере активны одновременно две RDP сессии (или более) с помощью команды:
qwinsta
rdp-tcp#0 user1 1 Active rdp-tcp#1 user2 2 Active
Утилита RDPWrap поддерживается во версиях Windows (включая домашние редакции Windows Home), таким образом из любой клиентской версии Windows можно сделать полноценный сервер терминалов.
В интерфейсе RDP Wrapper доступны следующие опции:
- Enable Remote Desktop — включить/отключить Remote Desktop в Windows доступ
- RDP Port — можно изменить стандартный номера порта удаленного рабочего стола TCP 3389
- Опция Hide users on logon screen позволяет скрыть список пользователей на экране приветствия;
- Single session per user —разрешить несколько одновременных RDP сессий под одной учетной записью пользователя. Эта опция устанавливает параметр реестра fSingleSessionPerUser = 0 в ветке HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server). Также этот параметр настраивается через опцию GPO Restrict Remote Desktop Services to a single Remote Desktop Services session в разделе Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections.
- В секции Session Shadowing Mode вы можете настроить режим теневого подключения к рабочему столу пользователей Windows .
Не работает RDP Wrapper в Windows
В некоторых случая утилита RDP Wrapper не работает как ожидается, и вы не можете использовать несколько RDP подключений.
Во время установки обновлений Windows может обновиться версия файла termsrv.dll. Если в файле rdpwrap.ini отсутствует описание для вашей версии Windows, значит RDP Wrapper не может применить необходимые настройки. В этом случае в окне RDP Wrapper Configuration будет указан статус [not supported].
В этом случае нужно обновить файл rdpwrap.ini как описано выше.
Если RDP Wrapper не работает после обновления файла rdpwrap.ini, попробуйте открыть файл rdpwrap.ini и найти в нем описание для вашей версии Windows.
Как понять, есть ли поддержка вашей версии Windows в конфиг файле rdpwrapper?
На скриншоте ниже показано, что для моей версии Windows 11 (10.0.22621.317) есть две секции с описаниями:
[10.0.22621.317] ... [10.0.22621.317-SLInit] ...
Если в конфигурационном файле rdpwrap соответствующая секция отсутствует для вашей версии Windows, попробуйте поискать в сети строки rdpwrap.ini для вашего билда. Добавьте найденные строки в самый конец файла.
Если после установки обновлений безопасности или после апгрейда билда Windows 10, RDP Wrapper не работает, проверьте, возможно в секции Diagnostics присутствует надпись Listener state: Not listening.
Попробуйте обновить ini файл, и затем переустановить службу:
rdpwinst.exe -u
rdpwinst.exe -i
Бывает, что при попытке второго RDP подключения под другим пользователем у вас появляется надпись:
Число разрешенных подключений к этому компьютеру ограничено и все подключений уже используются. Попробуйте подключиться позже или обратитесь к системному администратору.
The number of connections to this computer is limited and all connections are in use right now. Try connecting later or contact your system administrator.
В этом случае нужно с помощью редактора групповых политики gpedit.msc в секции Конфигурация компьютера –> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Подключения включить политику “Ограничить количество подключений” и изменить ее значение на 999999 (Computer Configuration -> Administrative Templates -> Windows Components ->Remote Desktop Services ->Remote Desktop Session Host -> Connections-> Limit number of connections).
Перезагрузите компьютер для обновления настроек GPO и применения новых параметров.
Модификация файла termsrv.dll для снятия ограничений RDP в Windows 10 и 11
Чтобы убрать ограничение на количество RDP подключений пользователей в Windows без использования rdpwrapper нужно заменить файл termsrv.dll. Это файл библиотеки, которая используется службой Remote Desktop Services. Файл находится в каталоге C:\Windows\System32.
Прежде, чем править или заменять файл termsrv.dll желательно создать его резервную копию. Это поможет вам в случае необходимости можно будет вернуться к исходной версии файла. Запустите командную строку с правами администратора и выполните команду:
copy c:\Windows\System32\termsrv.dll termsrv.dll_backup
Затем нужно стать владельцем файла. Проще всего это сделать из командной строки. Чтобы сменить владельца файла с TrustedInstaller на группу локальных администраторов с помощью команды:
takeown /F c:\Windows\System32\termsrv.dll /A
Должно появится сообщение: «SUCCESS: The file (or folder): «c:\Windows\System32\termsrv.dll» now owned by the administrators group».
Теперь с помощью icacls.exe предоставьте группе локальных администраторов полные права на файл termsrv.dll (Full Control):
icacls c:\Windows\System32\termsrv.dll /grant Administrators:F
(или
Администраторы
в русской версии Windows).
Должно появится сообщение: «processed file: c:\Windows\System32\termsrv.dll Successfully processed 1 files; Failed processing 0 files«.
Теперь нужно остановить службу Remote Desktop Service (TermService) из консоли services.msc или из командной строки:
Net stop TermService
Вместе с ней останавливается служба Remote Desktop Services UserMode Port Redirector.
Чтобы узнать номер билда вашей Windows, выполните команду winver или следующую команды PowerShell:
Get-ComputerInfo | select WindowsProductName, WindowsVersion
Затем откройте файл termsrv.dll с помощью любого HEX редактора (к примеру, Tiny Hexer). В зависимости от билда нужно найти и заменить строку:
Версия Windows | Найти строку | Заменить на |
Windows 11 22H2 | 39 81 3C 06 00 00 0F 84 75 7A 01 00 |
B8 00 01 00 00 89 81 38 06 00 00 90
|
Windows 10 22H2 | 39 81 3C 06 00 00 0F 84 85 45 01 00 | |
Windows 11 RTM ( 21H2 22000.258) | 39 81 3C 06 00 00 0F 84 4F 68 01 00 | |
Windows 10 x64 21H2 | 39 81 3C 06 00 00 0F 84 DB 61 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
|
Например, для самой редакции Windows 10 x64 22H2 19045.2006 (версия файла termsrv.dll — 10.0.19041.1949) нужно открыть файл termsrv.dll в Tiny Hexer. Затем найдите строку:
39 81 3C 06 00 00 0F 84 85 45 01 00
И замените ее на:
B8 00 01 00 00 89 81 38 06 00 00 90
Сохраните файл и запустите службу TermService.
Если что-то пошло не так, и у вас возникнут проблемы со службой RDP, остановите службу и замените модифицированный файл termsrv.dll исходной версией:
copy termsrv.dll_backup c:\Windows\System32\termsrv.dll
Данный скрипт написан для версии Windows PowerShell, и не работает на PowerShell Core.
Преимущество способа отключения ограничения на количество RDP сессий в Windows путем замены файла termsrv.dll в том, что на него не реагируют антивирусы. В отличии от утилиты RDPWrap, которую многие антивирусов считают Malware/HackTool/Trojan. Основной недостаток — вам придется вручную править файл после каждого обновления билда Windows (или при обновлении версии файла termsrv.dll в рамках ежемесячных кумулятивных обновлений).
Встроенная поддержка нескольких RDP сессий в редакции Windows 10 Enterprise Multi-session
Недавно Microsoft выпустило специальные Enterprise редакции Windows multi-session (ранее назывались Windows 10 Enterprise for Remote Sessions и Windows 10 Enterprise for Virtual Desktops).
Главная особенность этой редакции – она поддерживает множественные одновременные RDP сессии пользователей прямо из коробки. Несмотря на то, что редакцию Windows multi-session разрешено запускать только в виртуальных машинах Azure, вы можете вам установить эту редакцию в on-premises сети и использовать данный компьютер терминальный сервер (хотоя это будет нарушением лицензионной политики Microsoft).
Далее мы покажем, как обновить компьютер с Windows 10 Pro до Windows 10 Enterprise for Virtual Desktop и использовать его для одновременного подключения нескольких пользователей.
Откройте командную строку и проверьте текущую редакцию Windows (Professional в этом примере):
DISM /online /Get-CurrentEdition
Обновите вашу редакцию Windows с Pro до Enterprise:
Changepk.exe /ProductKey NPPR9-FWDCX-D2C8J-H872K-2YT43
Теперь установить GVLK ключ для Windows 10 Enterprise for Remote Sessions:
slmgr.vbs /ipk CPWHC-NT2C7-VYW78-DHDB2-PG3GK
Проверьте, что теперь ваша редакция Windows 10 изменилась на
ServerRdsh
(Windows 10 Enterprise for Virtual Desktops).
Активируйте вашу копию Windows Enterprise Multi-Session на вашем KMS сервере:
slmgr /skms msk-man02.winitpro.local:1688
slmgr /ato
Откройте редактор локальной GPO
(gpedit.msc
) и включите Per-User режим лицензирования в параметре Set the Remote Desktop licensing mode (Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing).
После активации нужно перезагрузить Windows. Теперь попробуйте подключиться к компьютеру по RDP под несколькими пользованиями. Как вы видите, Windows 10 Enterprise multi-session одновременные RDP подключения поддерживаются прямо из коробки.
Get-ComputerInfo | select WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer
Windows 10 Enterprise for Virtual Desktops 2009 10.0.19041.2728
qwinsta
В этой статье мы рассмотрели способы, позволяющие снять ограничение на количество одновременных RDP подключений пользователей, и запустить бесплатный терминальный сервер на клиентской Windows 10 или 11. У каждого из этих способов есть свои преимущества и недостатки. Какой из них использовать — решать вам.
А больше 2 пользователей как сделать?
там хоть 10, у мя 5 работает
тоже дает только 2 юзера
Спасибо!
ай бомбец, дякую
уже как то писал правда на 8. народ помогите!!! удаленный доступ сделал, но могу заходить только по сети, из вне(глобальной сети) ну никак не получается, что может быть порты проброшены на 3389. на виндовс 7 проблем вообще нет, но хочу поставить 10 и получается что в сети да, из вне нет. и нужно просто по работе, так как частые командировки и нужен доступ.
Скорее всего нужно руками добавить правило в Windows Firewall, разрешающие коннект на порт 3389 для всех профилей (через GUI) или командами:
netsh.exe advfirewall firewall add rule name=»Remote Desktop — User Mode (TCP-In)» dir=in action=allow program=»%%SystemRoot%%\system32\svchost.exe» service=»TermService» description=»Inbound RDP traffic[TCP 3389]» enable=yes profile=any localport=3389 protocol=tcp
netsh.exe advfirewall firewall add rule name=»Remote Desktop — User Mode (UDP-In)» dir=in action=allow program=»%%SystemRoot%%\system32\svchost.exe» service=»TermService» description=»Inbound RDP traffic[UDP 3389]» enable=yes profile=any localport=3389 protocol=udp
пробовал создать правило ручками, не выходит, а через команды к сожалению не умею((((
измените тип сети с публичной на рабочую, это можно сделать через реестр, в инете была инфа по этому поводу…
Я ничего не пойму — по ссылке скачиваются только исходники враппера; но как же получить бинарники? (
Исходники можно скачать на странице https://github.com/stascorp/rdpwrap/releases. Вам нужен архив RDPWrap-v1.6.zip
не понимаю, не работает на инсайдерских версиях 10-ки?
вот бы ещё печать на принтер локальный была из терминального окна… вообще тогда красота бы была
Шо значит «ещё бы печать»? Она же есть. Можно кстати не токо родным винды способом, а среди прочего прокидыванием pdf-ок с виртуального принтера делать, оно ваще кроссплатформенным тогда выходит.
Для того, чтобы подцепился локальный принтер, нужно на терминальном сервере установить принтерные драйвера. Правда, с терминальными принтерами частенько бывает нужен бубен.
Как правило достаточно на терминальном сервере включить Easy Print и проблемы с печатью с клиентов через терминал пропадут.
Easy Print не панацея, наплакался с принтерами HP LaserJet 1606dn в терминале, это то же, что и семейство HP LaserJet 1100, драйверы кривые, Easy Print не катит
Возможно, ScrewDriver — панацея. Решите любые проблемы с любыми принтерами которые стоят на платформе Windows.
PS. Драйвера принтеров на стороне сервера больше не понадобятся.
Если мне при этом знать надо кто, куда, откуда заходил по rdp в event viewer. Логи пишутся и как их найти если я буду использовать rdp wrapper?
Не проверял, но мне кажется что при использовании rdp wrapper, в логах в журналах событий Windows отличий не будет.
Люди, помогите! Скачал дистрибутив 1.6.1, но при попытке распаковать его, DrWeb матерится и говорит, что вирус. В релизе 1.6 тоже троян. Чего за дела???
Откуда качали файл? Нужно качать только с GitHub. Проверяйте на VirusTotal.com.
Ну он же системную библиотеку правит. Точнее подгружает вместо родной правленую. Что это как не проявление вируса? Отключать drweb и ставить без него…
Интересно… Установил на вин8.1 single user
Запустил RDPConf.exe, нажал там применить, пробросил порты.
Коннекчусь телнетом — один раз подключилось, телнет повисел, отвалился и всё. RDP клиент не может подключиться.
фаервол, каспер — отключены.
не работает.
Что может быть? Куда копать?
я немного не понял этот патч позволяет до скольки одновременных сессий? и можно ли от имени одного пользователя несколько сессий при этом не нарушая работу пользователя т.е
к примеру есть один пользователь на пк USER и все … вот он работает и если через удаленный рабочий стол войти от имени USER т.е от имени работающего пользователя не выбьет ли его?
сколько одновременно могут войти в сессию от одного и того же пользователя 1? 2? N?
спасибо
После июньского кумулятивного обновления Win8.1 wrapper перестал работать.
А будет ли работать на домашних версиях 8-ки или 10-ки?
Да, RDP c RDPWrap работает даже на домашних виндах.
Не работает. Все 3 строчки зеленые, но при попытке подключиться пишет что нельзя подключаться по RDP так как HOME версия. Пробую на WIN 10 HOME. Что не так делаю?
«пользователи Pro и Enterprise Windows 10 (но не Home) редакций могут»
«при попытке подключиться пишет что нельзя подключаться по RDP так как HOME версия. Пробую на WIN 10 HOME.»
windows 10 home не потдерживает ни одного пользователя rdp
Возможно нужно скачать последнюю версию RDP, у меня на сегодня RDPWrap-v1.6.2
и у меня такая же. А должны появляться политики групп пользователей? у меня не появляются
у меня вроде ничего такого
Как сделать чтоб можно было подключатся в 1 пользователя несколько человек
В настройках RDPwrapper снимите галку «Single session per user». Т.е. пользователь не будет ограничен одной RDP сесией. В таком режиме с разных компьютеров можно удаленно подключаться по rdp под одним пользователем (но такое реежим вообще говоря не рекомендуется, т.к. могут быть проблемы с целостностью профиля пользователя и данными, хранящимися в нем)
Винда 10-ка обновилась с версии 1709 на 1803 и прога перестала работать! Ини-файл не подходит!
Замените файл в каталоге C:\Windows\system32\termsrv.dll на старую версию файла C:\Windows.old\system32\termsrv.dll,(на всякий случая сделайте бэкап) перезагрузите комапьютер. После этого rdp wrapper опять начинает работать! Проверено на Windows 10 1803 Spring Update!
При этом termsrv.dll версия 10.0.17134.1 и в ней нет последовательности 39 81 3C 06 00 00 0F 84 73 42 02 00
Что помогло, как заработало, ничего не написал. У меня та же проблема — нет последовательности 39 81 3C 06 00 00 0F 84 73 42 02 00, что делать?
Если у вас не Windows 10 1507, искать эту последовательность бессмысленно. Файл termsrv.dll изменяется почти при каждом обновлении, поэтому лучше использовать RDPWrap.
Спасибо. Действительно все заработало!
Вчера поставил 10-ку. termsrv.dll конечно 10.0.17134.1 и там, да, нет 39 81 3C 06 00 00 0F 84 73 42 02 00. Но у меня нет и старой версии библиотеки. Попробовал найти ее в сети — с этой последовательностью не нашел. Со скаченной пропаченной RDP вообще не работает
конечно нубы, нужно отличать версию сборок и совместимые с ней версии терминального сервера. 😛
Если нечего сказать — помолчи, проблема есть и надо её решать, а не молоть языком попусту.
Лови. Версия 10.0.16299.15.
Спасибо! Сегодня уж нет, но завтра попробую!
Файл пропатчен? Службу остановил, файл заменил, службу запустил. Но все осталось как было: юзер может быть лишь один
Файл нетронутый. Как есть в 1709
так там нет последовательности 39 81 3C 06 00 00 0F 84 73 42 02 00. Что тогда с ним делать? Такой и у меня в системе стоит
Я и не искал последовательность, просто тупо файл взял с компа дочери (у нее винда еще не обновилась) и сроду никогда не стояло ни РДП, ни WRap. А у меня WRap стоял. Просто перестал работать после обновления, а после возвращения старой termsrv опять заработал (WRap), и все ОК поэтому.
Прошу прощения за непонятливость и приношу глубочайшую благодарность за помощь! Заработало!!!
win10 x64 1803 (17134)
при подключении извне, после авторизации: «произошла внутренняя ошибка» , а RDPCheck.exe — «Unknown code 0x4» и служба «падает»
Попробуйте заменить файл termsrv.dll на файл от предудущей версии Windows 10 1709. Ссылка была выше, либо можно скопировать его из своего каталога C:\Windows.old\system32\termsrv.dll (если выполнялось обновление до 1803).
Спрашивает пароль каждый раз при подключении, хотя он сохранен в системе, как это решить, вчера сервак упал, запустил на рабочей машине, завтра все прийдут, а тут на тебе пароль надо какойто вводить? Подскажите пожалуйста!
С паролем подключается? Ну и если RDP сервер, новый то нужно пароли заново сохранить…
Также попробуйте на сервер последние обновлений установить (мне почему-то кажется что есть связь с этим https://winitpro.ru/index.php/2018/05/11/rdp-auth-oshibka-credssp-encryption-oracle-remediation/)
Попутно к предыдущим постам на всякий случай. Если вы как я (как мы!) заменили termsrv от винды 1803 на 1709 и все работает, при любом косяке с компом, неважно каком, если вы запустите в связи с чем-то sfc \scannow, она вам напишет что файлы повреждены, и восстановит оригинальную termsrv (с которой ничего не работает)! Сегодня произошёл такой казус
Я хекнул файл, в итоге у меня не более 16 подключений, можно это как то вылечить?
Ресурсов на компьютере достаточно для такого количества одновременных RDP сессий? А что выдает выдает при подключении к рабочему столу 17 клиента?
В версии 1803 появилась редакция — Remote server, ничего патчить не надо, просто установить и пользоваться, количество пользователей не ограничено. Первый запуск выполнять в режиме аудита (ctrl+shift+F3) чтобы создать локального пользователя.
Что такое Remote server и с чем его едят? как им пользоваться?
Похоже что это сервер терминалов для бедных
Ребят у вас RDPWrap еще работает?
Пишет что
Service state: stopped
Listener state: Not listening
update пробовал, пишет что последняя версия от мая
Служба TermService (службы удаленных рабочих столов) висит как остановленная и запускаться не хочет.
Может кто сталкивался как ее запустить можно?
Собственно доступ то настроил, день поработало и перестало. А теперь изложенная выше проблема
Итак, путем шаманства было выявлено что при откатке на заводские настройки оно запускается, но до первой перезагрузки.
После этого служба пускаться не хочет пока Wrap не будет удален.
При попытке поставить заного пишет что не поддерживатся на *версии. Подробнее:
*] Installing…
[*] Terminal Services version: 10.0.17134.1
[-] This version of Terminal Services is not supported.
Try running «update.bat» or «RDPWInst -w» to download latest INI file.
If it doesn’t help, send your termsrv.dll to project developer for support.
Вопрос все в том же кто-нибудь уже через оное проходил и как оно лечится?
Скачал вручную ini файл от разработчика, положил в папку установки враппера. Удалил и заново установил — работает. Версия винды 1803. С весны. после обновления. тоже не работало.
У меня перестал работать на этой неделе — самый новый ini файл от 16 мая
С ним не работает — помогла только замена dll на старую версию
Надо ждать новый файл
Вы заменили файл termsrv.dll на версию из предыдущего билда Windows 10? RDPWrap перестал работать после сентябрьский обновлений?
Да, после обновленя KB4457131 RDPWrap последний перестал работать.
Пока сношу обновление и все ОК.
На вин 10? у меня server 2016, в списке нет этого обновления, 2 других, которые установлены в этот-же день есть. Как его удалить???
зачем это на server?
да
Подходит даже старый файл из этой публикации
Винда обновилась до 1809 сёдня и RDP опять встал. На сей раз подмена termsrv.dll от винды 1709 как выше почему-то не работает, хотя в 1803 работала
Солидарен с Иваном (03.10.2018), та же ерунда, мб у кого-то есть свеженький термсрв или иной подход к решению этой проблемы?))
На компьютере с RDP Wrapper работает пользователь1. при подключении пользователя2 по рдп, рабочи стол у пользователя один — сварачивается и открывается рабочий стол пользователя2. То есть не работает в фоне. при отключении пользователя2 — восстанавливается рабочий стол П1. где грабли?
У меня такая же проблема. Вам удалось найти решение?
увы пока нет
Добрый день.
После обновления не дает работать двум пользователям одновременно. Посоветуйте, что делать, плиз!
Windows 10.0.10240.18036
Windows 10 x64 October 2018 Update (сброрка 17763.1). Вручную заменил в файле termsrv.dll блок: 39 81 3C 06 00 00 0F 84 7F 2C 01 00
на: B8 00 01 00 00 89 81 38 06 00 00 90
Полет нормальный!
Спасибо!
Просто, похоже у меня старая сборка — там такого бока нет.
Но, за от вет спасибо.
Спасибо. Также заменил этот блок — все работает. 1809. Сборка 17763.134
Это какой-то трэш!!! После обновления windows RDP отвалился, перепробовал всё: и копирование старой копии файла termsrv.dll и копирование с другого компьютера, и копирование с сайта разработчика файла rdpwrap.ini, и даже полез проверять доступ к службам и права на запуск служб. Оказалось надо было просто удалить все файлы из папки C:\Program Files\RDP Wrapper и по новой установить программу.
Странно. Я даже винду пробовал переустановить — все равно RDP Wrapper больше не работает.
Перестал работать после обновления от 18.12.2018. У кого-нибудь уже есть решение?
думаю, надо ждать новой версии от разработчика wrapper’а. Когда слетала прошлый раз, достаточно было заменить dll-файл. Сейчас это не помогает
2k12
нет файла termsrv.dll в папке system32
win10 1809
где его искать, чтобы заменить?
Terminal Services version: 10.0.17763.168
This version of Terminal Services is not supported.
пичялька 🙁
Иван, или кто сведущ, подскажите как заменить файл? Никак не получается получить права для удаления/замены файла.
Службу останавливал. Читал разные способы в инете. Пробовал те, что без стороннего ПО. Не получается никак. Права админа естественно. Никак не удается победить и восстановить мультисессионность 🙁
в безопасном режиме
А как в безопасном режиме загрузиться, подскажите?
Вас в гугле забанили?
Дай бог, тебе здоровья. Очень помогла статья.
останавливаешь службу «службы удаленных рабочих столов». Ищешь в system32 файл termsrv.dll. Правой кнопкой — свойства, вкладка безопасность, внизу «дополнительно», потом Владелец — изменить, ставишь себя. Потом на вкладке безопасность Пользователи и группы — добавляешь себя и ставишь себе полный доступ. Все. Можешь удалять дллку и заменить ломаной. Службу запускаешь заново. Комп потом перегрузишь
Работать работает, но много тормознее, если же на один и тот же условный комп, вместо десятки, поставить win2k12r2. Особенно заметно в прорисовке быстро меняющихся сцен. флеш игры (хотя в рдесктопе ими играть и кощунство).
Касаемо и семерки и десятки vs win2k8/2k12.
Статья помогла,но при подключении по RDP на основном компе видно рабочий стол того кто подключился…
помогите плиз!
Не понял вас. Т.е. вы подключаетесь в одну сессию одновременно (один человек видит ее локально с компьютера, а второй по rdp?), или речь о том что вы хотите иметь несколько независимых сессии под одной учеткой? Во втором случае вам нужно отключить опцию «Single session per user » в rdpwraper.
В этом то и проблема, что не получается работать в фоне на целевом компе. Хотя к нему можно подключить несколько сессий рдп одновременно.
Какая версия Windows 10 и rdpwrapper? Раньше эта схема работала: одна локальная сесии и несколько удаленных по RDP…
Благодарочка! win10 x64 pro версия файла 10.0.17763.168
У кого до сих пор не работает.
Скопировать куски кода с указанной страницы (3 билда вин10) и вставить в rdpwrap.ini .
У меня всё заработало. Длл патченая из ссылки выше в обсуждении.
_https://forums.mydigitallife.net/threads/discussion-windows-10-termsrv-dll-patching.57102/page-6#post-1499417
после обновления безопасности win 7 от 13/02/2019
пишет not supported partially
при повторной установке
— starting servce error code 1056
откатил оновления работает
подставааааа… соелет враппер 1-6-1, переустановили, пускает 1 сессию. .и всё…
То есть, 1 сессия на локальном компьютере, и 1 сессия РДП с удалённого. При попытке поднять вторую сессию с удалённого система пишет что подключён другой пользователь, и предлагает его выбить. .и просит выбить именно локального!!! Я ничего не понимаю…
По ходу разработчик забил на свое творение 🙁
100 инфа! Спасибо!!! Удаляем обновление безопасности и все работает как и ранее!
Где это удаляется?
а как снять ограничение на 20 коннектов?
Вдруг возникло ограничение на 2 сессии. Windows 7.
При переинсталляции так и написало:
[!] This version of Terminal Services is supported partially.
It means you may have some limitations such as only 2 concurrent sessions.
Try running «update.bat» or «RDPWInst -w» to download latest INI file.
If it doesn’t help, send your termsrv.dll to project developer for support.
Удалил KB4489878 — теперь всё ок.
Для корректной работы rdpwrapper после обновления с Windows 10 1803 на 1809 (10.0.17763.379. ) нужно использовать обновленный INI файл.
Нужн добавить строки
[10.0.17763.292]
; Patch CEnforcementCore::GetInstanceOfTSLicense
LocalOnlyPatch.x86=1
LocalOnlyOffset.x86=AFAD4
LocalOnlyCode.x86=jmpshort
LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=77A11
LocalOnlyCode.x64=jmpshort
; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled
SingleUserPatch.x86=1
SingleUserOffset.x86=4D665
SingleUserCode.x86=nop
SingleUserPatch.x64=1
SingleUserOffset.x64=1322C
SingleUserCode.x64=Zero
; Patch CDefPolicy::Query
DefPolicyPatch.x86=1
DefPolicyOffset.x86=4BE69
DefPolicyCode.x86=CDefPolicy_Query_eax_ecx
DefPolicyPatch.x64=1
DefPolicyOffset.x64=17F45
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
; Hook CSLQuery::Initialize
SLInitHook.x86=1
SLInitOffset.x86=5B18A
SLInitFunc.x86=New_CSLQuery_Initialize
SLInitHook.x64=1
SLInitOffset.x64=1ABFC
SLInitFunc.x64=New_CSLQuery_Initialize
[10.0.17763.292-SLInit]
bInitialized.x86 =CD798
bServerSku.x86 =CD79C
lMaxUserSessions.x86 =CD7A0
bAppServerAllowed.x86 =CD7A8
bRemoteConnAllowed.x86=CD7AC
bMultimonAllowed.x86 =CD7B0
ulMaxDebugSessions.x86=CD7B4
bFUSEnabled.x86 =CD7B8
bInitialized.x64 =ECAB0
bServerSku.x64 =ECAB4
lMaxUserSessions.x64 =ECAB8
bAppServerAllowed.x64 =ECAC0
bRemoteConnAllowed.x64=ECAC4
bMultimonAllowed.x64 =ECAC8
ulMaxDebugSessions.x64=ECACC
bFUSEnabled.x64 =ECAD0
(и обязательно пустая строка в конце). См. обсуждение: _https://github.com/stascorp/rdpwrap/issues/699
А где этот INI файлик лежит?
нашел
C:\Program Files\RDP Wrapper\rdpwrap.ini
после обновления win 10 от 10-11 апреля 2019 года удалённый доступ опять перестал работать(( Версия системы осталась прежней, 1809, но версия файла termsrv.dll изменилась с 10.0.17763.292 на 10.0.17763.437. Кто-то уже нашёл решение? Опять надо rdpwrap.ini менять.
Такая же проблема, что делать то
Такая же проблема. Кто то нашел решение ?
https://github.com/stascorp/rdpwrap/issues/729#issuecomment-481951560
Готовый ini
https://github.com/stascorp/rdpwrap/files/3062713/rdpwrap.zip
работает на x64 10.0.17763.437
windows10x64
10.0.17763.437 все работает :
https://github.com/stascorp/rdpwrap/issues/729
У меня все равно не работает!
10.0.17134.706
Обновите Windows до актуальной версии 1809 , файл сам обновится до 10.0.17763.437
у меня так же ранее был 10.0.17134.706
У меня на Windows Server 2016 x64 не работает !
вот решение — https://github.com/stascorp/rdpwrap/issues/729
Где искать этот ini файл на компе?
C:\Program Files\RDP Wrapper\rdpwrap.ini
По ссылке reangel скачал, заменил, перезапустили службу удалённых рабочих столов и всё заработало! Спасибо! Система WIN 10 64 Home
Все заработало! обновляйте винду! и запускаем https://github.com/stascorp/rdpwrap/issues/729
Так же говорим спасибо всем кто нам помог!!! Всем удачи!!!
нарисовалась проблемка, что после перезапуска враппер не пашет, пока его снова не запустить 🙁
учитывая, что за компами пользователи с ограниченными правами — запускать они его не смогут. Надо добавлять задание в планировщик с повышенными правами
Новая проблема больше 5 пользователей не пускает, пишет службы удаленных рабочих столов сейчас заняты…. как решить?
2019.04.13: перестало работать после обновления Винды 10
Просьба к разработчикам исправить проблемму, заметил 13.04.2019 что перестало работать.
Сейчас на вин7 все отлично работает. 8 локальных и два удаленных пользователя. Хочу модернизировать сервер, с переходом на десятку. Посоветуйте какую лицензию вин 10 лучше приобрести для работы в режиме терминала.
Лучше- не трогай! У меня один терминальный на 7-ке — уже забыл про него, второй на 10-ке — задрал лечить ограничения на количество удаленных подключений…. Так что- НЕ ТРОГАЙ!!!!!!!!!!!!!!!!!!!!!!!!
Да, подтверждаю, работает. WIndows 10 Pro 1809 сборка 17763.437. Огромное спасибище!
Думаю скоро файлик заблокируют, так как он работает даже с самым последним на сегодняшний день обновлением как у меня. Рекомендую в свойствах файла убрать разрешения на запись и изменение для всех пользователей, кроме Администратор, (чтобы в случае чего можно было что-то с ним сделать). Для этого надо стать владельцем файла, потом отменить наследование прав для этого файла и для всех пользователей, что там указаны снять соответствующие галочки, затем добавить в список пользователей пользователя Администратор и поставить ему полные права. Не тестировал еще, возможно будут ошибки при обновлениях Винды. Но зато неожиданно не перепишется Виндой.
Не удается работать локальному пользователю который реально сидит за этим компом с монитором и через rdp. что происходит: при подключении по RDP удаленного пользователя реальный пользователь который сидит за этим компом вылетает и загружается тот же сеанс под которым входит RDP клиент.
То же самое, не могу победить =(
Для работы по RDP, нужны разные учетные записи. Каждый пользователь, должен заходить под своим уникальным логином и паролем.
Разные пользователи соответственно
Уважаемые, поделитесь решением!
Огромное СПАСИБИЩЕ!!!!!!!!!!!!!
Я сделал установку с дистрибутива скаченного с официального сайта (Самого свежего) и там нет возможности удалить обновления, из-за которых перестает работать удаленка…. Патч файла не получается…. Но этот файл спас ситуацию!!!!!!!!!!
Решение было выше:
«Иван 20.12.2018
Но выше же уже все решили с 1809. Замените termsrv.dll и будет вам щастье с RDP без всяких Wrapperov.»
Если не хотите подменять dll, тогда просто удалите это обновление (KB4493464)
это удаление через командную строку:
wusa /uninstall /kb:4493464
Если нет такого обновления, то поможет только подмена dll !!!
Еще обновление KB4503286.
Для Windows 10 x86 1809 (10.0.17763.437)
Найти:
3B 81 20 03 00 00 0F 84 B3 04 02 00
Подставить:
B8 00 01 00 00 89 81 20 06 00 00 90
Настроил подключение через RDPWrap-v1.6.2, возник интересный вопрос, а как сделать автоматическое завершение зависших или отключенных сессий?
Например в серверных ОС это реализовано простым выставлением таймаута.
Вы можете выставить таймаут отключения неактивных RDP сессий в редакторе локальных политик (gpedit.msc).
Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Session Time Limits.
Политика называется Set time limit for active but idle Remote Desktop Services sessions. Укажите через сколько нужно завершать неактивные сессии.
Также настройте политику End session when time limits are reached.
В этом же разделе GPO есть и другие настройки для отключения RDP сессий.
Win 10 х64 1809 (17763.503), есть ли для этой сборки враппер?
Обновилась винда, теперь не работает
10.0.17134
пытался сделать апдейт — скриптом update.bat — пока ничего — not supported
аналогично :(( пробую откатить обновление
Кому-то удалось решить проблему, без удаления обновлений? Чтобы система продолжала нормально обновляться? Сейчас пока работаю на 1809, но на другом компьютере уже обновилась до 1903. Там удалённый доступ работать перестал. Win 10 домашняя, 64.
Дублируется сессия на локальном компьютере, как это избежать? Галочку на Single per user пробовал снимать и убирать, толку нет.
Полезная ссылочка для всех
https://github.com/fre4kyC0de/rdpwrap
После обновления Windows каждый раз приходится вводить логи и пароль для входа на удаленку для каждого пользователя, раньше вход происходил автоматически на каждом компьютере.
Можно как-нибудь это исправить? Галочка чтобы не показывался выбор
пользователь стоит..
У меня винда версии 1903 и сборки 18362.295, файл termsrv.dll, соответственно, 10.0.18362.267. Воспользовался файлом rdpwrap.ini выложенным здесь:
https://github.com/asmtron/rdpwrap/blob/9abffc40f3897cb2a5e3f28eacb650a55af31649/res/rdpwrap.ini
Всё заработало и RDPConf.exe показывает всё «по зелёной».
Спасибо «смотрящему» за «темой»))
Единственный момент остался, это то, что появились «отваливания» пользователей примерно через 2 часа работы. Сессия вылетает, затем пользователь сразу выполняет переподключение и работает дальше. Раньше не было так.(
Всем привет. У кого такое было? Скопировали обновленный ini файл в папку программы с заменой старого. Запустили RDPConf.exe он показывает все гуд. Библиотека 10.0.18362.267 Full Support.
И нифига не работает. Как не пускало больше одного пользователя так и пускает!
Что мы делаем не так?
Попробовали сделать всё как написал пользователь hh118, версия винды такая же а вот сборка уже 18362.356. RDPConf.exe стал показывать полную поддержку, но «не слышет». Думаю проблема в том, что уже сборка успела обновиться? Версия файла termsrv.dll такая же, 10.0.18362.267. Раньше это было главным и все начинало работать, при замене на поправленный rdpwrap.ini. Если кто-то решил или нашёл решение, отпишитесь пожалуйста.
Удалось решить проблему?
Пока нет((
Ну что удалось кому то победить этот недуг?
Я победил у себя наконец. Обновил винду до последней версии на текущий момент (1903, termsrv.dll соответственно тоже обновился), скачал самый свежий ini (https://github.com/asmtron/rdpwrap/blob/master/res/rdpwrap.ini) и заработало.
А как ini качать ? я открываю ссылку — а там только код вижу ? Помогите
либо скопировать весь текст, либо подняться на пару уровней вверх и скачать весь проект, а оттуда вытянуть файл
Получилось вернуть работоспособность:
Обновил винду до 1903 Сборка ОС 18362.418
удалил RDPWrap-v1.6.2 , опять установил
В службах остановил «Службы удаленых рабочих столов»
В папке C:\ProgramFiles\RDP Wrapper — заменил файл rdpwrap на rdpwrap — скачанный https://github.com/asmtron/rdpwrap/blob/master/res/rdpwrap.ini (он кстати по размеру больше чем был)
Далее запустил «Службы удаленых рабочих столов»
Затем в RDPWrap-v1.6.2 — запустил update
И готово — пока все работает
Попробовал,
Not listening, fully supported,
Куда копать?
ставить другую сборку, сам намучался с 10.0.16299.15 любые замапленые мною порты не прослушиваются на вход. все уже перевые..ал , и поставил в итоге 10.0.17763.529 с версией библиотеки ts 10.0.17763.437..
да и вообще это опасные такие публичные штуки врапперы… никто не гарантирует безопасности..
кривой протокол у мелкомягких.
и вот туда глянуть там батник на апдейт https://github.com/stascorp/rdpwrap/issues/795
она даст поддержку версии терминала 10.0.17763.437.
в батнике вроде есть возможность для включения поддержки свежих версий терминала
Все супер! Обновил до 1903, батник и все зеленое.
Благодарю!
Автор думает, что его вычислят по ip 192.168.0.0 :)))))))))))))))))))))))
Перестал работать 13.02.2020, есть решения проблемы?
Перестал работать rdpwrapper или можифицированный termsrv.dll. Какой билд Windows 10?
Обновления какие-то устаналивались за последние дни? Какие? Пытались откатить?
Есть решение для последнего билда ОС10. Описано пошагово с файлами здесь
https://github.com/stascorp/rdpwrap/issues/1006
Всем привет. Вчера было также. Решили. Подробно: после добавления строк переписали rdpwrap_ini_updater.bat в папку с установленным RDPWrap (Program Files\RDP Wrapper), запустили файл re-install.bat, после этого программа проверки показала все строки зелёным, всё заработало. Информацию нашли в теме: https://github.com/stascorp/rdpwrap/issues/983
Спасибо, все получилось. Заработало.
Мне помогла автообновлялка rdpwrap.ini
1. качаем https://github.com/stascorp/rdpwrap/pull/859
2. разархивируем в Program Files\RDP Wrapper
3. от имени администратора запускаем Program Files\RDP Wrapper\autoupdate.bat
4. запускаем Program Files\RDP Wrapper\RDPConf.exe и видим все зелененькое
Про способ №2 («Модификация файла termsrv.dll»):
Не думал, что ОС позволяет вот так себя «править»…
Ещё в Windows XP сталкивался с работой её механизма самозащиты (не знаю, как официально называется… что-то типа «system protection»… (речь не о проверке сист.файлов по запросу утилитой SFC, а о отслеживании в режиме реального времени изменений сист.файлов с их последующим восстановлением из dllcache).
Неужели, в современных версиях Windows такого механизма защиты нет? Или, м.б., ОС не считает этот (termsrv.dll) файл витальным для себя и поэтому не отслеживает его изменение?
Кто ориентируется в технологиях MS, пожалуйста, объясните.
На сборке 10.0.18362.657 как решить вопрос о возможности работы нескольких пользователей?
Замена rdpwrap.ini из последних не помогает
Всё, разобрался.
https://github.com/stascorp/rdpwrap/issues/1006
Репозиторий с GitHub удалён, но у меня остались установочные файлы.
Также есть rdwrap.imi для windows 10 pro 1909.
Восстановят ли репозиторий — неизвестно.
интересно, с чего бы это… вроде лицензионного соглашения не нарушает…
Нарушает:
2.d.(v) Удаленный доступ. Вы можете назначать одного пользователя, который физически использует лицензированное устройство, лицензированным пользователем не чаще, чем один раз в 90 дней. Лицензированный пользователь может получать доступ к лицензированному устройству с другого устройства с помощью технологий удаленного доступа. Другие пользователи, по одному пользователю одновременно, могут осуществлять доступ к лицензированному устройству с другого устройства с помощью технологий удаленного доступа, если для удаленного устройства приобретена отдельная лицензия на запуск того же программного обеспечения или его более новой версии.
2.а. Лицензия. Программное обеспечение не продается, а предоставляется по лицензии. В рамках настоящего соглашения мы предоставляем вам право установить и запустить один экземпляр программного обеспечения на устройстве (лицензированное устройство) для одновременного использования одним лицом, если вы соблюдаете все условия настоящего соглашения. Обновление неподлинного программного обеспечения до программного обеспечения от Microsoft или других авторизованных источников не делает вашу изначальную версию или обновленную версию подлинной, и в этом случае вы не имеете лицензии на использование программного обеспечения.
Согласно соглашению 1 ПК может использовать 1 человек (1 пользователь в онном экземпляре) одновременно.
Т. Е. Нельзя зайти одновременно под двумя пользователями, не отключая других от ПК.
Данная программа создана для обхода этого ограничения.
а тимвьювер? а амми админ? а энидеск? и другие аналогичные утилиты предоставляют точно такой же функционал 😉
Если TeamViver подключён к томуже сеансу (он единственный активный), то соглашение не нарушается. Это попадает под удалённую помощь (под неё в соглашении исключение в п. 2.d.(vi)).
Если сеансы не совпадают — это нарушение.
То есть всякие vnc, которые можно на каждого пользователя ставить, это нарушение?
это подойдёт для Windows 7 ? ни с того ни с сего 1.6.1 версия только 2 юзеров пускает, третьему уже предлагает выбить кого-то из первых двух….
Пробовал переустановить и через батник обновить — так в результате вообще только 1 пускает…
тоже самое решилось???
Здравствуйте, Александр. Выложите, пожалуйста, rdpwrap.ini для 1909. Или напишите почту, по которой с вами монно связаться.
Для сборки 10.0.18363.836 еще ничего не известно по rdpwrap.ini?
Тоже ищу. Неделю назад обновилась и всё пропало
Братец, я нашёл! Службы УРС останови, файл https://github.com/fre4kyC0de/rdpwrap/files/4626244/rdpwrap.v18363.836.zip замени, потом службы запусти.
не работает на несколько одновременно пользователей
В Windows 10 x64 2004 заменить 39 81 3C 06 00 00 0F 84 D9 51 01 00 на B8 00 01 00 00 89 81 38 06 00 00 90
Спасибо тебе, добрый человек!
Спаисбо)
Привет. У меня билд 1809 (17763.1217) и в файле строка 39 81 3C 06 00 00 0F 84 CB 2B 01 00. На какую её надо заменить?
Спасибо
Здравствуйте, мой комментарий несколько не в тему, но касается того как снять ограничение одновременных VPN соединений у стандартного microsoft’овского VPN сервиса.
Расскажу только о том где и чего надо поправить:
В разделе реестра «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0003»
должны присутствовать имена «ComponentId» и «MatchingDeviceId» с содержимым в обоих «ms_pptpminiport»
могут попадаться случаи в которых эти имена находятся под другим номером «ветки» (0001, 0002,…)
далее нам следует исправить «WanEndpoints» на 128(десятичное) и «MaxWanEndpoints» на 1000(десятичное)
после этого нам следует исправить rasppp.dll файл, что находится в папке «system32», для всех строк поиска значения чисел 75 и 74 меняются B8
Win7-x86 (6.1.7601.17514) — ищем по адресу 48D5 значения «75 07 83 0D» и по адресу 490E значения «74 07 83 0D»
Win7-x64 (6.1.7601.17514) — ищем по адресу CC0F значения «75 07 83 0D» и по адресу CC48 значения «74 07 83 0D»
Win10-x64 (10.0.18362.1) — ищем по адресу 40E2 значения «75 06 09 1D» и по адресу 411C значения «74 06 09 1D»
поправка в тексте: после этого нам следует исправить rasppp.dll файл, что находится в папке «system32», для всех строк поиска значения чисел 75 и 74 меняются на B8
Здравствуйте, а для версии 1909, какие строки на что нужно поменять. За ранее спасибо!
Спасибо за статью.
Хочу поделится глюком (может у кого-то будет та же ситуация): при настройке RDP через TeamViewer, при подключении удаленного пользователя кажется что выкидывает локального, хотя на самом деле все норм (то есть в TeamViewer мы вместо консоли локального компа где настраиваем RDP, ошибочно видим удаленный сеанс пользователя)
Ничего там не норм. Любой, подключившийся через TeamViewer, видит RDP сеанс, а не консольный!!!
не решили проблему ?
Заменил termserv по инструкции, все заработало. Но теперь после включения компа нет звука (ни каких ошибок, визуально все выглядит как раньше, просто колонки молчат). Помогает только отключение сервиса. При этом если включить его обратно звук продолжает работать, и так до перезагрузки
Вернул на место оригинальный dll, но проблема осталась 🙁
Всем добрый день. После последнего обновления метод с заменой файла termsrv.dll перестал работать. Служба просто не стартует. Сталкивался кто с подобной проблемой? Версия системы 1903 сборка 18362,239.
Для сборки 18362.836 есть уже rdpwrap.ini?
Пропишите в конец ini файла:
[10.0.18362.836]
LocalOnlyPatch.x86=1
LocalOnlyOffset.x86=B7D06
LocalOnlyCode.x86=jmpshort
LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=82FC5
LocalOnlyCode.x64=jmpshort
SingleUserPatch.x86=1
SingleUserOffset.x86=50515
SingleUserCode.x86=nop
SingleUserPatch.x64=1
SingleUserOffset.x64=DBFC
SingleUserCode.x64=Zero
DefPolicyPatch.x86=1
DefPolicyOffset.x86=50249
DefPolicyCode.x86=CDefPolicy_Query_eax_ecx
DefPolicyPatch.x64=1
DefPolicyOffset.x64=1FE15
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
SLInitHook.x86=1
SLInitOffset.x86=5A75A
SLInitFunc.x86=New_CSLQuery_Initialize
SLInitHook.x64=1
SLInitOffset.x64=22DDC
SLInitFunc.x64=New_CSLQuery_Initialize
[10.0.18362.836-SLInit]
bInitialized.x86 =D577C
bServerSku.x86 =D5780
lMaxUserSessions.x86 =D5784
bAppServerAllowed.x86 =D578C
bRemoteConnAllowed.x86=D5790
bMultimonAllowed.x86 =D5794
ulMaxDebugSessions.x86=D5798
bFUSEnabled.x86 =D579C
bInitialized.x64 =F6A8C
bServerSku.x64 =F6A90
lMaxUserSessions.x64 =F6A94
bAppServerAllowed.x64 =F6A9C
bRemoteConnAllowed.x64=F6AA0
bMultimonAllowed.x64 =F6AA4
ulMaxDebugSessions.x64=F6AA8
bFUSEnabled.x64 =F6AAC
А для версии 2004 (Сборка 19041.329) тоже ничего нету?
RDPWrap + конфиги
+ autoupdate https://raw.githubusercontent.com/asmtron/rdpwrap/master/autoupdate.zip
как это сдлеать? я вставил, обновил, включил автообновление
ничего нет
Не запускается программа через RDP. Санс просто закрыается.
Windows 7 x86 6.1.7601.
Галка «Allow to start custom programs» стоит, все строки зеленые.
Вв журнале сообщения:
Имя журнала: Application
Источник: Desktop Window Manager
Дата: 30.06.2020 14:21:32
Код события: 9009
Диспетчер окон рабочего стола завершил работу с кодом (0x40010004)
затем:
Код события: 9003
Не удается запустить диспетчер окон рабочего стола, так как составная тема не используется
Без запуска программы все работает нормально, туже программу можно запустить с ярлыка.
На сервере 2003 тот же RDP файл запускает нормально.
В чем проблема ?
На последней виндовс 10 установилась программа. Я счастлив! Благодарю!
Поставил rdpwrap, прописал строчки для 10.0.18362.836. Всё стало зелененькое. Но всё-равно пишет «В
систему вошел другой пользователь если вы продолжите он будет отключен»
Спасибо ОГРОМНОЕ. Спасли. Всех благ. Всегда с ВАМИ!!!++++
Поправил с помощью HEX редактора termsrv.dll в Windows LTSB и LTSC по вашей инструкции и все заработало. Спасибо!!!
страно, но в windows LTSC не нашёл код для 1809
Приветсвую. С версией 2004 на 64 бита не работает
Никто не ставил на серверной винде чтоб не настраивать хост сервер и службу лицензий?
Работает на 19 сервере, но меняй бинарные значение как пишут ниже, на красную надпись в дальнейшем не обращай внимание, перезагрузка не нужна.
У кого проблемы на 2004 версии(19041), помогает этот ини:
rdpwrap.ini-10.0.19041.84 (через ya поиск в первых пяти найдете)
Не забывайте потом отключить обновления с помощью проги Wub.
Спасибо за помощь, сеим макаром проблема разрешилась. Плюс Вам сударь в карму. 🙂
Для Windows 10x 64 2004 последняя версия 03.10.20
termsrv.dll ver 10.0.19041.84
39813c0600000F84D9510100 на
B80001000089813806000090
Отлично ! Спасибо за помощь !
В любой версии Windows 10 x64, начиная с 1809, ищем в файле termsrv.dll ключевую последовательность «39 81 3C 06 00 00 0F 84 ** ** ** **», меняем её на «B8 00 01 00 00 89 81 38 06 00 00 90» и всё работает.
Кто нибудь сталкивался с ограничением в 16 сессий на Win 10? Т.е. 15 клиентов работают, а 16-й при попытке войти получает » ваш сеанс работы с удаленным рабочим столом окончен…» Ограничений в gpedit никаких нет. Здесь такой вопрос был, но решений я не увидел. Ресурсы у железа есть, учетка админская. Может кто сталкивался?
15 подключений — это и есть лимит данного решения.
Больше только уже серверная ОС.
Правильно ли я понимаю: под словом «данного решения» понимается как правка termsrv.dll так и установка rdpwrap? Получается загнать на Win 10 больше 15 клиентов не получится никакими способами?
И вдогонку еще вопрос: а у Win 7 такое ограничение тоже есть? У меня 17 пользователей и вопрос надо решить и хотелось бы малой кровью
это не лимит решения, это ограничение винды на число входящих подключений, в 7ке этой проблемы нету с патчем на библиотеку tcpip.sys. на 10тку пока не нашел((((
Та же проблема. Пока не могу решить
патчинг блока в termsrv.dll 1809 помог.
«39 81 3C 06 00 00 0F 84 3B 2B 01 00» — был другой код в середине
но замена на «B8 00 01 00 00 89 81 38 06 00 00 90» — решила проблему.
при этом RDPConf.exe показывал NOT SUPPORTED.
перезагрузка не потребовалась.
благодарю автора кода.
Последняя версия 10, скачал сегодня с офф ресурса. забросте в папку с прогой и запустите апдейт. мне помогло
https://github.com/asmtron/rdpwrap/raw/master/autoupdate.zip
спасибо, мил человек!
Дополнение к моему сообщению от 05.2020 на тему снятия ограничений на VPN подключения к Win 7/10
Было замечено что после очередного обновления Win10 ветка реестра стала автоматически восстанавливаться после перезапуска службы «Диспетчер подключений удаленного доступа», а так-же после рекомендованных исправлений и вовсе перестала запускаться служба.
Но решение похоже в очередной раз найдено…
В реесте изменять ничего не требуется, необходимое место ищется так-же: находим последовательность «75 06 09 1d» и примерно в 32-х байтах позже должна быть последовательность «74 06 09 1d», далее смотрим немного ранее первой последовательности и находим там «0f 1f 44 00 00» и заменяем ее на «bb 80 00 00 00»
тестировалось на версиях файлов 19041.1 и 19042.572
вот этот .ini работает на последних версиях windows 10:
https://raw.githubusercontent.com/affinityv/INI-RDPWRAP/master/rdpwrap.ini
поправочка: работает только на [10.0.19041.84], а вот на [10.0.19041.662] уже нет 🙁
отредактировал termsrv.dll как в статье, в итоге подключиться получается, но с такой проблемой:
На сервере выполнен вход с «первого» пользователя. При подключении второго компа к нему через rdp с авторизацией на «второго» пользователя, выполняется вход. При этом на сервере автоматически совершается выход из «первого» пользователя и авторизация «второго» пользователя. В итоге оба компа авторизованы под «вторым» пользователем и видят действия друг друга. Почему такое может происходить? Как сделать параллельный вход двух пользователей?
если ли инфо как пропатчить tremsrv.dll для версии 20H2 19042.630
Попробовал оба способа, и с RDP Wrapper, и с редактированием termsrv.dll. Теперь подключение происходит, но с такой проблемой:
На сервере выполнен вход с «первого» пользователя. При подключении второго компа к нему через rdp с авторизацией на «второго» пользователя, выполняется вход. При этом на сервере автоматически совершается выход из «первого» пользователя и авторизация «второго» пользователя. В итоге оба компа авторизованы под «вторым» пользователем и видят действия друг друга. Почему такое может происходить? Как сделать параллельный вход двух пользователей?
https://github.com/asmtron/rdpwrap/blob/master/res/rdpwrap.ini
Свежий !
как скачать его??
Для Windows 10x 64 2004 последняя версия 20.10.2020
termsrv.dll ver 10.0.19041.685
39813c0600000F84E95D0100 на
B80001000089813806000090
Windows 10 x64 v2004 — May 2020 Update (20H1)
Найти:
39 81 3C 06 00 00 0F 84 D9 51 01 00
Заменить:
B8 00 01 00 00 89 81 38 06 00 00 90
Здравствуйте, после обновления 10-ки до 19041.630 дополнил rdpwrap.ini по этой инструкции https://github.com/stascorp/rdpwrap/issues/1244
Проверяя с помощью RDPConf — всё слушает и полностью поддерживает, но при попытке подключиться вторым пользователем — получаем ошибку «Число разрешенных подключений к этому компьютеру ограничено и все подключений уже используются. Попробуйте подключиться позже или обратитесь к системному администратору.»
Групповые политики редактировал. В подключениях выставил 999999. Но не помогло.
Было у кого нибудь такое?
Сейчас именно такая проблема. Еще не нашел как это победить. Явно где то еще что то есть кроме исправления GP. В реестре тоже менял и тоже не помогло. Конкретно у меня я обновил Windows 8.1 SL до Windows 10 20H2. Похоже что то от 8ки осталось.
Добрый день! Появились соображения в чём проблема?
Нет. Не разобрался забил слишком много времени я уделил решению проблемы пару недель ковырял эту проблему. Проще винду переустановить с нуля.
Здравствуйте!
Не подскажите что надо заменить в termservice.dll при Windows 10, версия 1607, построение ос 14393.70?
termsrv.dll версии:
10.0.18362.1316 — 39813C0600000F8475610100
10.0.19041.746 — 39813C0600000F84015E0100
менять на B80001000089813806000090
Добрый день. Меняю termsrv.dll, 10.0.18362, когда подключаю с помощью тимвьвера, то попадаю на рабочий стол пользователя RDP. Как этого можно избежать? Спасибо.
Для тех, кто не может найти хекс строки, указанные в табличке в статье, в termsrv.dll после очередного обновления винды — ищем по маске в хекс значение 39813C0600000F84 и далее добавляем 4 парных значения, идущие следом за найденным. И вот уже эту строку меняем на B80001000089813806000090. Данный принцип пока действенный.
Предлагаемый Вами вариант предназначен для получения возможности работы
нескольких одновременных сессий без установки RDP Wrapper?
P.S. просто у меня на termserv.dll версии 10.0.19041.746 не получилось сделать 2 соединения после изменений в termserv.dll
Супер, работает, спасибо!
20H2 19042.630 — не работает.
Спасибо! Работает этот способ! Проверил на двух версиях, ниже выложил результат.)))
На windows server 2019 (10.0.17763.1697) — сработало! Вставить текст в rdpwrap.ini и ребутнуться.
[10.0.17763.1697]
LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=7E421
LocalOnlyCode.x64=jmpshort
SingleUserPatch.x64=1
SingleUserOffset.x64=138BC
SingleUserCode.x64=Zero
DefPolicyPatch.x64=1
DefPolicyOffset.x64=18545
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
SLInitHook.x64=1
SLInitOffset.x64=21A3C
SLInitFunc.x64=New_CSLQuery_Initialize
[10.0.17763.1697-SLInit]
bInitialized.x64 =F3B8C
bServerSku.x64 =F3B90
lMaxUserSessions.x64 =F3B94
bAppServerAllowed.x64 =F3B9C
bRemoteConnAllowed.x64=F3BA0
bMultimonAllowed.x64 =F3BA4
ulMaxDebugSessions.x64=F3BA8
bFUSEnabled.x64 =F3BAC
Добавлю, что RDP Wrapper позволяет работать удалённо, используя два монитора.
В стандартном варианте RDP это не получается.
Кто-нибудь 20h2 — 19042.630 победил ?
termsrv.dll версии:
20h2 — 19042.631
найти:
39813C0600000F84D9510100
заменить на:
B80001000089813806000090
termsrv.dll версии:
20H2 — 19042.789
найти:
39813C0600000F84015E0100
заменить на:
B80001000089813806000090
а у меня нет такой строки. а еще может кто знает, rdp_wrapper пишет что всё ок, но нифига не работает
«эта строка», только в конкретной версии Windows (19042.789 или 19042.631), для каждой версии строки разные
Также подходит для сборки 19042.867
termsrv.dll версии:
20H2 — 19042.964
найти:
39813C0600000F84E16A0100
заменить на:
B80001000089813806000090
[6.1.7601.24402]
SingleUserPatch.x86=1
SingleUserOffset.x86=1A675
SingleUserCode.x86=nop
SingleUserPatch.x64=1
SingleUserOffset.x64=17F26
SingleUserCode.x64=Zero
DefPolicyPatch.x86=1
DefPolicyOffset.x86=19E41
DefPolicyCode.x86=CDefPolicy_Query_eax_esi
DefPolicyPatch.x64=1
DefPolicyOffset.x64=17CFE
DefPolicyCode.x64=CDefPolicy_Query_eax_rdi
для win7 в ini прописать , все работает полет нормальный , а было ограничение на 2 пользователя
Все это хорошо, да только dr web ругается на установочные файлы. И на msi и на zip. Говорит, мол >>RDPWInst.exe/data005 contains a potentially dangerous software Program.Rdpwrap.4
>>RDPWInst.exe/data006 contains a potentially dangerous software Program.Rdpwrap.7
Народ, что скажете? Есть желание сделать из Восьмеркы сервер на работе, опровал на тестовом компе, вроде работает. Но это тестовый запуск. Стремно если из-за какой-то закладки ляжет сервер, или инфа с него улетит незнамо кому. Желающие ответить в стиле: «Если стремно, покупай лицензию» и тп могут не утруждаться. Может кто по делу что сказать?
посмотри исходники врапера и собери из них сам. тогда будешь уверен.
Пропатченный файл глюченный!
Работает для .906
С 19041.928 поможете?
И с 19042.964 тоже
ini для 20H2(19042.964)
termsrv.dll версии:
20H2 — 19042.964
найти:
39813C0600000F84E16A0100
заменить на:
B80001000089813806000090
Есть решение под 19042.1052 ?
Тоже интересно
Windows x64 10.0.19042.1052
39 81 3C 06 00 00 0F 84 21 68 01 00
B8 00 01 00 00 89 81 38 06 00 00 90
ermsrv.dll версии:
10.0.19041.1023
Помогите, пожалуйста
Pavel всё так же, последовательность начинается с адреса 17E15. Любым HEX редактором поправьте на B80001000089813806000090
не могу найти такую 🙁 А вопрос актуален как никогда.
Отбой, нашёл, только в этой версии начинается с0х17Е10.
20H2 — 19042.1055 есть решение?
https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
для 10.0.19041.1081 : по адресу 18500
Версию файла rdsdwmdr.dll смотрим в свойствах — вкладка «подробно»!
не совпадает с названием Опер.системы
Windows x64 10.0.19042.1083
39 81 3C 06 00 00 0F 84 DB 61 01 00
B8 00 01 00 00 89 81 38 06 00 00 90
это что? ответ? совет? вообще не понятно.
Все уже поняли что надо искать этот набор.
вот где? интересен только адрес..
10.0.19042.1083 адрес: ???
Ищите HEX-строку 39 81 3C 06 00 00 0F 84 DB 61 01 00. HEX-редакторы это позволяют делать.
Может я прям сильно тупой, но не могу найти строку в win 10 pro 1909, пишет нет строки.
Приветствую!
20H2 сборка 19042.1165 — есть решение?
Можно ли использовать данный софт для удаленного управления? Нужен аналог TeamViewer. Я хочу при подключении управлять и видеть рабочий стол активного пользователя, и чтобы он видел мои действия.
А чем Вам Anydesk плох?
Виндовс обновился до 1909, rdp перестало работать. Кто нибудь нашел решение ?
Есть решение вообще не заморачиваться на изменения Била в версиях termserv.dll !
Давно написано три батника + инфа по полуавтоматической замене rdpwrap.ini в след за изменениями Била в
версиях termserv.dll
ИНФА. avtoupdate_info.txt
INSTALL of RDP Wrapper and Autoupdater
======================================
1. Copy the files from the archive «RDPWrap-v1.6.2.zip» (or newer) to the directory: «%ProgramFiles%\RDP Wrapper»
DO NOT use other directories to install/extract the RDP Wrapper files.
USE ONLY the directory: «%ProgramFiles%\RDP Wrapper» (usually C:\Program Files\RDP Wrapper)
2. Copy the batfile #3 from this message to the directory: «%ProgramFiles%\RDP Wrapper» and
the batfiles 1 and 2 in this directory to the new folder «helper»
3. To enable autorun of autoupdate.bat on system startup, run the following helper batch file as administrator:
«%ProgramFiles%\RDP Wrapper\helper\autoupdate__enable_autorun_on_startup.bat»
4. Set in your Antivirus or Windows Defender an exclusion on the folder «%ProgramFiles%\RDP Wrapper» to prevent the deletion of RDP Wrapper files…
5. Now you can use the autoupdate batch file to install and update the RDP Wrapper. Please run autoupdate.bat as administrator:
«%ProgramFiles%\RDP Wrapper\autoupdate.bat»
Батник №1 autoupdate__disable_autorun_on_startup.bat
@echo off
if exist "%~dp0autoupdate.bat" (
call "%~dp0autoupdate.bat" -taskremove
) else (
if exist "%~dp0..\autoupdate.bat" (
call "%~dp0..\autoupdate.bat" -taskremove
)
)
pause
Батник №2 autoupdate__enable_autorun_on_startup.bat
@echo off
if exist "%~dp0autoupdate.bat" (
call "%~dp0autoupdate.bat" -taskadd
) else (
if exist "%~dp0..\autoupdate.bat" (
call "%~dp0..\autoupdate.bat" -taskadd
)
)
pause
Батник №3 autoupdate.bat
<!-- : Begin batch script
@echo off
setLocal EnableExtensions
setlocal EnableDelayedExpansion
:: _ _
:: _ | | _ | | _
:: ____ _ _| |_ ___ _ _ ____ _ | | ____| |_ ____ | | _ ____| |_
:: / _ | | | | _)/ _ \| | | | _ \ / || |/ _ | _)/ _ ) | || \ / _ | _)
:: ( ( | | |_| | |_| |_| | |_| | | | ( (_| ( ( | | |_( (/ / _| |_) ( ( | | |__
:: \_||_|\____|\___\___/ \____| ||_/ \____|\_||_|\___\____(_|____/ \_||_|\___)
:: |_|
::
:: Automatic RDP Wrapper installer and updater asmtron (2021-04-19)
:: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: Options:
:: -log = redirect display output to the file autoupdate.log
:: -taskadd = add autorun of autoupdate.bat on startup in schedule task
:: -taskremove = remove autorun of autoupdate.bat on startup in schedule task
::
:: Info:
:: The autoupdater first use and check the official rdpwrap.ini.
:: If a new termsrv.dll is not supported in the offical rdpwrap.ini,
:: autoupdater first tries the asmtron rdpwrap.ini (disassembled and
:: tested by asmtron). The autoupdater will also use rdpwrap.ini files
:: of other contributors like the one of "sebaxakerhtc, affinityv, DrDrrae, saurav-biswas".
:: Extra rdpwrap.ini sources can also be defined...
::
:: { Special thanks to binarymaster and all other contributors }
::
:: -----------------------------------------
:: Location of new/updated rdpwrap.ini files
:: -----------------------------------------
set rdpwrap_ini_update_github_1="https://raw.githubusercontent.com/asmtron/rdpwrap/master/res/rdpwrap.ini"
set rdpwrap_ini_update_github_2="https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini"
set rdpwrap_ini_update_github_3="https://raw.githubusercontent.com/affinityv/INI-RDPWRAP/master/rdpwrap.ini"
set rdpwrap_ini_update_github_4="https://raw.githubusercontent.com/DrDrrae/rdpwrap/master/res/rdpwrap.ini"
set rdpwrap_ini_update_github_5="https://raw.githubusercontent.com/saurav-biswas/rdpwrap-1/master/res/rdpwrap.ini"
:: set rdpwrap_ini_update_github_6="https://raw.githubusercontent.com/....Extra.6...."
:: set rdpwrap_ini_update_github_7="https://raw.githubusercontent.com/....Extra.7...."
::
set autoupdate_bat="%~dp0autoupdate.bat"
set autoupdate_log="%~dp0autoupdate.log"
set RDPWInst_exe="%~dp0RDPWInst.exe"
set rdpwrap_ini="%~dp0rdpwrap.ini"
set rdpwrap_ini_check=%rdpwrap_ini%
set rdpwrap_new_ini="%~dp0rdpwrap_new.ini"
set github_location=1
set retry_network_check=0
::
echo ___________________________________________
echo Automatic RDP Wrapper installer and updater
echo.
echo ^
echo.
:: check if admin
fsutil dirty query %systemdrive% >nul
if not %errorlevel% == 0 goto :not_admin
:: check for arguments
if /i "%~1"=="-log" (
echo %autoupdate_bat% output from %date% at %time% > %autoupdate_log%
call %autoupdate_bat% >> %autoupdate_log%
goto :finish
)
if /i "%~1"=="-taskadd" (
echo [+] add autorun of %autoupdate_bat% on startup in the schedule task.
schtasks /create /f /sc ONSTART /tn "RDP Wrapper Autoupdate" /tr "cmd.exe /C \"%~dp0autoupdate.bat\" -log" /ru SYSTEM /delay 0000:10
powershell "$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries; Set-ScheduledTask -TaskName 'RDP Wrapper Autoupdate' -Settings $settings"
goto :finish
)
if /i "%~1"=="-taskremove" (
echo [-] remove autorun of %autoupdate_bat% on startup in the schedule task^^!
schtasks /delete /f /tn "RDP Wrapper Autoupdate"
goto :finish
)
if /i not "%~1"=="" (
echo [x] Unknown argument specified: "%~1"
echo [*] Supported argments/options are:
echo -log = redirect display output to the file autoupdate.log
echo -taskadd = add autorun of autoupdate.bat on startup in the schedule task
echo -taskremove = remove autorun of autoupdate.bat on startup in the schedule task
goto :finish
)
pause
:: check if file "RDPWInst.exe" exist
if not exist %RDPWInst_exe% goto :error_install
goto :start_check
::
:not_admin
color 0e
echo ___________________________________
echo [x] ERROR - No Administrator Rights
echo [*] This script must be run as administrator to work properly^^!
echo ^
echo.
timeout 60
goto :finish
:error_install
echo [-] RDP Wrapper installer executable (RDPWInst.exe) not found^^!
echo Please extract all files from the downloaded RDP Wrapper package or check your Antivirus.
echo.
goto :finish
::
:start_check
set rdpwrap_installed="0"
:: ----------------------------------
:: 1) check if TermService is running
:: ----------------------------------
sc queryex "TermService"|find "STATE"|find /v "RUNNING" >nul&&(
echo [-] TermService NOT running^^!
call :install
)||(
echo [+] TermService running.
)
:: ------------------------------------------
:: 2) check if listener session rdp-tcp exist
:: ------------------------------------------
set rdp_tcp_session=""
set rdp_tcp_session_id=0
if exist %windir%\system32\query.exe (
for /f "tokens=1-2* usebackq" %%a in (
`query session rdp-tcp`
) do (
set rdp_tcp_session=%%a
set /a rdp_tcp_session_id=%%b 2>nul
)
) else (
for /f "tokens=2* usebackq" %%a in (
`reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v "fDenyTSConnections" 2^>nul`
) do (
if "%%a"=="REG_DWORD" (
set rdp_tcp_session=AllowTSConnection
if "%%b"=="0x0" (set rdp_tcp_session_id=1)
)
)
)
if %rdp_tcp_session_id%==0 (
echo [-] Listener session rdp-tcp NOT found^^!
call :install
) else (
echo [+] Found listener session: %rdp_tcp_session% ^(ID: %rdp_tcp_session_id%^).
)
:: -----------------------------------------
:: 3) check if rdpwrap.dll exist in registry
:: -----------------------------------------
reg query "HKLM\SYSTEM\CurrentControlSet\Services\TermService\Parameters" /f "rdpwrap.dll" >nul&&(
echo [+] Found windows registry entry for "rdpwrap.dll".
)||(
echo [-] NOT found windows registry entry for "rdpwrap.dll"^^!
if %rdpwrap_installed%=="0" (
call :install
)
)
:: ------------------------------
:: 4) check if rdpwrap.ini exists
:: ------------------------------
if exist %rdpwrap_ini% (
echo [+] Found file: %rdpwrap_ini%.
) else (
echo [-] File NOT found: %rdpwrap_ini%^^!
if %rdpwrap_installed%=="0" (
call :install
)
)
:: ---------------------------------------------------------------
:: 5) get file version of %windir%\System32\termsrv.dll
:: ---------------------------------------------------------------
for /f "tokens=* usebackq" %%a in (
`cscript //nologo "%~f0?.wsf" //job:fileVersion "%windir%\System32\termsrv.dll"`
) do (
set termsrv_dll_ver=%%a
)
if "%termsrv_dll_ver%"=="" (
echo [x] Error on getting the file version of "%windir%\System32\termsrv.dll"^^!
goto :finish
) else (
echo [+] Installed "termsrv.dll" version: %termsrv_dll_ver%.
)
:: ----------------------------------------------------------------------------------------
:: 6) check if installed fileversion is different to the last saved fileversion in registry
:: ----------------------------------------------------------------------------------------
echo [*] Read last "termsrv.dll" version from the windows registry...
for /f "tokens=2* usebackq" %%a in (
`reg query "HKEY_LOCAL_MACHINE\SOFTWARE\RDP-Wrapper\Autoupdate" /v "termsrv.dll" 2^>nul`
) do (
set last_termsrv_dll_ver=%%b
)
if "%last_termsrv_dll_ver%"=="%termsrv_dll_ver%" (
echo [+] Current "termsrv.dll v.%termsrv_dll_ver%" same as last "termsrv.dll v.%last_termsrv_dll_ver%".
) else (
echo [-] Current "termsrv.dll v.%termsrv_dll_ver%" different from last "termsrv.dll v.%last_termsrv_dll_ver%"^^!
echo [*] Update current "termsrv.dll" version to the windows registry...
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\RDP-Wrapper\Autoupdate" /v "termsrv.dll" /t REG_SZ /d "%termsrv_dll_ver%" /f
if %rdpwrap_installed%=="0" (
call :install
)
)
:: ---------------------------------------------------------------
:: 7) check if installed termsrv.dll version exists in rdpwrap.ini
:: ---------------------------------------------------------------
:check_update
if exist %rdpwrap_ini_check% (
echo [*] Start searching [%termsrv_dll_ver%] version entry in file %rdpwrap_ini_check%...
findstr /c:"[%termsrv_dll_ver%]" %rdpwrap_ini_check% >nul&&(
echo [+] Found "termsrv.dll" version entry [%termsrv_dll_ver%] in file %rdpwrap_ini_check%.
echo [*] RDP Wrapper seems to be up-to-date and working...
)||(
echo [-] NOT found "termsrv.dll" version entry [%termsrv_dll_ver%] in file %rdpwrap_ini_check%^^!
if not "!rdpwrap_ini_update_github_%github_location%!" == "" (
set rdpwrap_ini_url=!rdpwrap_ini_update_github_%github_location%!
call :update
goto :check_update
)
goto :finish
)
) else (
echo [-] File NOT found: %rdpwrap_ini_check%.
echo [*] Give up - Please check if Antivirus/Firewall blocks the file %rdpwrap_ini_check%^^!
goto :finish
)
goto :finish
::
:: -----------------------------------------------------
:: Install RDP Wrapper (exactly uninstall and reinstall)
:: -----------------------------------------------------
:install
echo.
echo [*] Uninstall and reinstall RDP Wrapper...
echo.
set rdpwrap_installed="1"
%RDPWInst_exe% -u
%RDPWInst_exe% -i -o
call :setNLA
goto :eof
::
:: -------------------
:: Restart RDP Wrapper
:: -------------------
:restart
echo.
echo [*] Restart RDP Wrapper with new ini (uninstall and reinstall)...
echo.
%RDPWInst_exe% -u
if exist %rdpwrap_new_ini% (
echo.
echo [*] Use latest downloaded rdpwrap.ini from GitHub...
echo -^> %rdpwrap_ini_url%
echo -^> %rdpwrap_new_ini%
echo -^> %rdpwrap_ini%
echo [+] copy %rdpwrap_new_ini% to %rdpwrap_ini%...
copy %rdpwrap_new_ini% %rdpwrap_ini%
echo.
) else (
echo [x] ERROR - File %rdpwrap_new_ini% is missing ^^!
)
%RDPWInst_exe% -i
call :setNLA
goto :eof
::
:: --------------------------------------------------------------------
:: Download up-to-date (alternative) version of rdpwrap.ini from GitHub
:: --------------------------------------------------------------------
:update
echo [*] check network connectivity...
:netcheck
ping -n 1 google.com>nul
if errorlevel 1 (
goto waitnetwork
) else (
goto download
)
:waitnetwork
echo [.] Wait for network connection is available...
ping 127.0.0.1 -n 11>nul
set /a retry_network_check=retry_network_check+1
:: wait for a maximum of 5 minutes
if %retry_network_check% LSS 30 goto netcheck
:download
set /a github_location=github_location+1
echo.
echo [*] Download latest version of rdpwrap.ini from GitHub...
echo -^> %rdpwrap_ini_url%
for /f "tokens=* usebackq" %%a in (
`cscript //nologo "%~f0?.wsf" //job:fileDownload %rdpwrap_ini_url% %rdpwrap_new_ini%`
) do (
set "download_status=%%a"
)
if "%download_status%"=="-1" (
echo [+] Successfully download from GitHhub latest version to %rdpwrap_new_ini%.
set rdpwrap_ini_check=%rdpwrap_new_ini%
call :restart
) else (
echo [-] FAILED to download from GitHub latest version to %rdpwrap_new_ini%^^!
echo [*] Please check you internet connection/firewall and try again^^!
)
goto :eof
::
:: --------------------------------
:: Set Network Level Authentication
:: --------------------------------
:setNLA
echo [*] Set Network Level Authentication in the windows registry...
reg.exe add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v SecurityLayer /t reg_dword /d 0x2 /f
reg.exe add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel /t reg_dword /d 0x2 /f
goto :eof
::
:: -------
:: E X I T
:: -------
:finish
echo.
exit /b
::
--- Begin wsf script --- fileVersion/fileDownload --->
set args = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
WScript.Echo fso.GetFileVersion(args(0))
Wscript.Quit
set args = WScript.Arguments
WScript.Echo SaveWebBinary(args(0), args(1))
Wscript.Quit
Function SaveWebBinary(strUrl, strFile) 'As Boolean
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2
Const ForWriting = 2
Dim web, varByteArray, strData, strBuffer, lngCounter, ado
On Error Resume Next
'Download the file with any available object
Err.Clear
Set web = Nothing
Set web = CreateObject("WinHttp.WinHttpRequest.5.1")
If web Is Nothing Then Set web = CreateObject("WinHttp.WinHttpRequest")
If web Is Nothing Then Set web = CreateObject("MSXML2.ServerXMLHTTP")
If web Is Nothing Then Set web = CreateObject("Microsoft.XMLHTTP")
web.Open "GET", strURL, False
web.Send
If Err.Number 0 Then
SaveWebBinary = False
Set web = Nothing
Exit Function
End If
If web.Status "200" Then
SaveWebBinary = False
Set web = Nothing
Exit Function
End If
varByteArray = web.ResponseBody
Set web = Nothing
'Now save the file with any available method
On Error Resume Next
Set ado = Nothing
Set ado = CreateObject("ADODB.Stream")
If ado Is Nothing Then
Set fs = CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile(strFile, ForWriting, True)
strData = ""
strBuffer = ""
For lngCounter = 0 to UBound(varByteArray)
ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1)))
Next
ts.Close
Else
ado.Type = adTypeBinary
ado.Open
ado.Write varByteArray
ado.SaveToFile strFile, adSaveCreateOverWrite
ado.Close
End If
SaveWebBinary = True
End Function
Актуальный конфиг, по крайней мере для 1909
https://github.com/stascorp/rdpwrap/files/7203660/rdpwrap.TXT
А если быть точным, то актуальный конфиг для всех версий винды, включая 11
https://github.com/sebaxakerhtc/rdpwrap.ini/blob/master/rdpwrap.ini
Спасибо тебе. !
Сделал по инструкции и заменил ini* на который ты поделился. Всё заработало. !
Обновил по ссылке rdpwrap.ini
всё раработало! сразу FULL SUPPORT
Подскажите как настраивать разрешение окна RDP Cheker?
Оригинальный RDPCheck поддерживает только разрешение 640 X 480.
В настоящее время RDPCheck не рекоммендуется к использованию. Вместо него лучше использовать встроенный RDP клиент (mstsc).
В качестве имени ПК нужно указать 127.0.0.2 (127.0.0.3, …, 127.255.255.255).
127.0.0.1 не будет работать на современных версиях mstsc.
Задать произвольный размер окна mstsc можно при помощи аргументов КС, например:
mstsc /w:800 /h:600 /v:127.0.0.2
Кроме того, при использовании обычного RDPCheck произойдёт переключение с NLA на GUI authentification only, что снизит безопасность сервера. Это не происходит при использовании mstsc.
с последними обновлениями стало появляться «Число разрешенных подключений к этому компьютеру ограничено и все подключений уже используются. Попробуйте подключиться позже или обратитесь к системному администратору.» — которые не фиксятся правкой GPO, во всяком случае у меня так. откатить обновления не получается т.к некоторые обновления не дает удалить ОС. Следовательно в новых обновлениях зашито исправление фикса GPO для подключения нескольких пользователей, у кого так же?
Может кто то знает решение.
Для справки. Установил RDPwrapper. Многопользовательская сессия активна. Horizon Agent Direct Connection не работает в многопользовательской версии.
Неужели снова откопали стюардессу? Вроде же автор забросил эту поделку, скорее всего нашлись продолжатели. Из опыта — работает это всё крайне нестабильно, сразу надо отключать обновления, могут быть проблемы с сетевой печатью — проходил всё это, бороться приходится обходными путями.
А как же третий способ — самый правильный ? Ввести ключ от Enterprise for remote sessions или Enterprise for virtual desktops . Получаем версию, где множественный RDP работает из коробки.
ключик в студию!
Самый простой вариант сначала установить Pro/Enterprise, затем выполнить одну волшебную команду:
slmgr.vbs /ipk CPWHC-NT2C7-VYW78-DHDB2-PG3GK
Помните, что это официально не поддерживается и считается невозможным, техническая поддержка от Microsoft в этом случае официально не оказывается 🙂
«служба лицензирования сообщила, что данный ключ продукта недопустим»
работает! не знал про этот способ
но не подойдет, если винда LTSC
увы, у данного способа свои минусы: При консольном входе теперь всегда запрашивается логин, причем это нельзя поправить политиками — они игнорируются. И через некоторое время винда начинает напоминать о необходимости активировать RDS.
Система не напоминает о необходимости активации RDS, если она активирована online KMS (адреса серверов ищем в Google).
Описанное мной поведение проверялось на Windows 10 21H2 и Windows 11 21H2.
Возможно активацию RDS просит 1809, но её не проверял.
Очень помогло, Win10 64. Заменил данные в файле rdpwrap.ini.
Спасибо большое
Ещё один момент при работе при организации нескольких одновременных сессий в Windows 10 — не работает печать на перенаправленных принтерах, как ни настраивай — вылечить получилось только настройкой печати через веб-сервисы и обучение пользователей, что не совсем удобно. Возможно, это уже исправили, но раньше эта проблема была, и она довольно известна.
Большое спасибо за статью:)
К сожалению для Windows 10 20H2, сборка 19042.1526 ни одна из строк для замены на B8 00 01 00 00 89 81 38 06 00 00 90, не подходит:(
Помогите, пожалуйста 😁
Через RDP Wrapper почему-то может работать только один пользователь и тот берёт управление полностью на себя.
Патч termsrv.dll тоже не помогает.
Хелп!
Редакия Windows 10 20H2, сборка 19042.1526
Windows 10 Pro
Version: 21H2
OS Build: 19044.1503
termsrv.dll (x64): 10.0.19041.1503
===============================
Replace:
39 81 3C 06 00 00 0F 84 CB 56 01 00
With:
B8 00 01 00 00 89 81 38 06 00 00 90
А законно данное ПО ?
Это же на рушение лицензионного соглашения Microsoft?
Я к чему спрашиваю, в офисе возникла потребность в RDP подключениях, но у нас только можно легальное и лицензионное ПО.
В вашем случае оно не подойдет. приобретайте лицензии RDS Cal и Windows Server и делайте полноценный RDS/VDI
Понял. Спасибо
в ряде случаев патч termsrv32.dll приводит к останову службы TermService, при этом никаких записей в журнале не создается.
При применении данного решения возможны проблемы с печатью на подключенных компьютерах клиентов — получилось настроить только при помощи печати через интернет и внешний сервис, родными средствами — никак. Во всём остальном — рабочее решение,и внимательно с обновлениями надо быть.
с сборкой 19042.1586 кто-то смог совладать?
Уже есть 1586? У меня с 1566 облом.
Проверял на 1526 — с последним .ini файлом работает без вопросов. Надо очень внимательно смотреть, какой порт в RDPWrapper — почему-то выбрался странный порт, не сразу заметил.
19042.1586 у меня работает, достаточно заменить ини файл было на тот сто в статье
win 10 pro версия 21H1 сборка ос 19043.1586 После установки обновлений KB5011487
Пишет » Число разрешенных подключений к этому компьютеру ограничено и все подключения уже используются» До этого все работало в Wrapper ini файл заменил все горит зеленым
У этой ошибки есть 3 способа решения:
1. Перезапуск службы
termService
2. Перезагрузка
3. Изменить групповую политику (см текст статьи выше). Но обычно решается через 1 или 2.
Если ничего не помогло, то ошибка в
rdpwrap.ini
.Обновил Вин до 21H2 19044.1645. При подключении второго пользователя появляется сообщение — в систему вошел другой пользователь. Если вы продолжите, он будет отключен.
RDPWrap горит зеленым — full supported.
Политики крутил. Ограничение поставил 99999 пользователей. Не помогло
Куда копать?
В этом случае после установки RDP Wrapper нужно выполнить перезагрузку.
Пропатчить файл нужно term*.dll не помю точное название
Мерси, помогло!
Добрый день, а подходит ли скрипт для Windows 10 Enterprise LTSC 2019 x64 1809 или нужно файл termsrv.dll только вручную править?
«Полуавтомат» всеядный, работает на всем от Win7home(32bit) до Server2022(64bit)
Спасибо за ответ! Скрипт выполнился с какими-то ошибками, при попытке ручной правки файла termsrv.dll не нашлось нужной строки (Windows 10 Enterprise LTSC 2019 x64 1809), в итоге успешно использовал RDP Wrapper.
Так скрипт и работает с RDP Wrapper. Нужно было только по info раскидать три батника и главный запустить от админа.
Интересует powershell скрипт. Для патчинга непосредственно файла termsrv.dll.
Как запустить сей powershell скрипт из батника? В статье описывается вариант с открытием окна powershell и вводом/копированием команд для запуска этого скрипта. А хотелось бы автоматизировано, запустил батник, он в свою очередь PS скрипт. Не подскажите как это сделать?
Можно скрыть окно .bat при помощи
nircmd exec hide
, а в PowerShell добавить-WindowStyle -Hidden
, можно из PowerShell файла сделать .exe с подавлением вывода.так и запускайте скрипт, зачем его в батник превращать.
ПКМ на файле >> выполнить с помощью Powershell. Или уж так хочется, скрипт вызывается командой powershell.exe -file script.ps1
я одного не понимаю, тут все так восхищаются этим методом…. а что, у всех после патча прекрасно всё работает?
Лично у меня, на каких бы компах/версиях десятки я это не пробовал, после патча служба TermService самопроизвольно останавливается. Понять из-за чего это происходит, ну совсем невозможно. Никаких ошибок, никаких сообщений. В системном журнале пусто. Выставление перезапуска службы после третьего сбоя ни к чему не приводит: служба не перезапускается. И толку тогда патчить? вернулся к RDPWrap.
А в чем проблема сразу youscript.ps1 запустить?
Дело в том что при обновлении Винды, а оно происходит довольно часто, termsrv.dll может сильно отличаться даже от своих бета-версий и нужно писать новый скрипт для патчинга. Это головняк и время его найти и быстро пропатчить. Дешевле и быстрее добавить в RDP Wrapper батники по замене .ini и больше не возращаться к этому вопросу. Один раз запустил и сразу же начинаешь работать. Если заменили termsrv.dll, запускаешь autoupdate.bat и опять работаешь до замены termsrv.dll.
У меня есть «сервак» который мне достался в наследство, так вот в нем никогда нет проблем с терминалом. Ни разу за несколько лет. Хотя там обновления включены, потому что когда приходили обновления ломающие принтеры, они были. Там не wrapper.
И вот я ломаю голову как?
по видимому, у вас Windows Server с ролью сервера терминалов.
Тут можно найти версии файла rdpwrap.ini для разных версий Windows:
https://github.com/sebaxakerhtc/rdpwrap.ini/find/master
Уважаемый админ сайта и прочие знатоки. Нужна ваша помощь вот в каком вопросе.
Допустим, есть Виндоус сервер 2019 года или новее, там зарегана одна учётная запись администратора. К этому компу иногда нужно подключаться удалённо.
Можно ли сделать вторую учётку администратора в этом же вин-сервере и подключаться удалённо к этой второй учётке так, чтобы не мешать при этом в работе первой учётке администратора? То бишь, чтобы две учётки работали независимо и не мешая друг другу при удалённом подключении к ним.
Буду благодарен за развёрнутый и понятный ответ, поддержу сайт материально.
Windows Server из коробки поддерживает 2 одновременных RDP подключения. Вам нужно просто создать вторую локальную учетную запись, добавить ее в группу админов или Remote Desktop Users и все.
Можно одновременно рабоать под обоими пользователями в независимых RDP сессиях.
Спасибо за ответ!
то есть, если будет два одновременных удалённых подключения к разным локальным учёткам, то обе эти учётки могут работать независимо и никого выкидывать из сеанса не будет?
Все так.
самая дельная статья по настройке совместной работы -).
rdp клиент винды работает на много быстрее альтернативных програм для удалённого доступа
Вообщем автору спасибо за отлично проделанную работу.
Да. Это лучшее из того что есть и изложено очень детально
Всем привет.
Установил, поставил .ini, поменял количество подключений в полиси. rdpconf показывает, что все ОК (зеленое). Все равно 2-я сессия предлагает отключить имеющуюся. Версия 10.0.14393.5127.
Изучив вопрос внимательнее, пришел к выводу, что это из-за того, что у меня винда х86, тогда, как во всех найденных мной в инете .ini в секции [10.0.14393.5127] присутствуют только параметры для х64.
Т.е. нужны либо параметры для х86, либо описание того, как их найти самостоятельно.
Буду признателен!
Тебе нужно сделать модификацию файла termsrv.dll
Таким образом получится реализовать одновременную работу двух человек — первого через rdp-сессию и второго физически на компьютере?
Да, только это будут 2 разных пользователя.
Я сабмитнул issue на сайте проекта, и они обновили .ini. Заняло всего несколько дней. Молодцы ребята!
Тем, кто будет создавать issue следующая просьба:
1. Перед созданием issue проверять, ни создал ли кто-то ранее заявку с той же версией
termsrv.dll
.2. В названии issue писать версию
termsrv.dll
(указана в RDPConf, и в свойствах DLL)3. К issue нужно прикладывать файл
termsrv.dll
. Без него добавление поддержки вашей версии невозможно!!!Если по issue нельзя установить версию
termsrv.dll
, то он будет закрыт (я сейчас модерирую issues проекта)Windows 10 Pro
Version: 21H2
OS Build: 19044.2251
termsvr.dll 10.0.19041.2075
похожая строка: 39 81 3C 06 00 00 0F 84 85 45 01 00
а на что поменять?
Здравствуйте! Не могли бы поправить ошибку в скрипте в строке:
[byte[]] $dll_as_bytes_replaced = -split $dll_as_text_replaced -replace '^', '0x'
«Не удается преобразовать значение «0x» в тип «System.Byte». Ошибка: «Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.»
Отбой, сам и нашёл в чём проблема. Нужно выполнять в PowerShell, а не в его x86 версии
Блин, а как то скачать то RDPWrap-v1.6.2.zip? Хром не дает
RESPECT
Chrome: Cnrl+J => «загрузить ….»
Добрый день. Скажите как в нем сделать так что 2 пользователя подключались к 1 пользователю и могли видеть друг друга в нем
А что с лицензированием при переходе на такую Винду? Как происходит контроль сессий? Как на серверных редакциях или другие инструменты?
RDP Wrapper или патчинг DLL не требует лицензирования RDS. Для работы этих способов требуется отсутствие роли RDS на сервере. SKU будет как у установленной ОС.
Если изменить ключ, на тот, который писал выше в комментариях, то будет SKU и поведение сервера. На Windows 10/11 21H1 и выше (точно не проверял) лицензирование RDS с этим ключём не нужно. Если требует лицензию RDS, то на той редакции выход один — сброс пробного периода.
———
Во всех перечисленных случаях для управления RDS можно использовать стороннее ПО Terminal services manager (бесплатно некоммерческое использование). Также доступны команды CMD.
Windows 10 Enterprise multi-sessio выдает ProductType = 3 — то же значение, что и у Windows Server. Это обеспечивает совместимостьОС со средствами управления для сеансов удаленных рабочих столов, приложениями с поддержкой многосеансовой поддержки, а также оптимизацией производительности низкоуровневых систем для сред узлов сеансов удаленных рабочих столов.
Некоторые установщики приложений могут блокировать установку в многосеансовой системе Windows 10, если ProductType имеет значение Client.
Попробовал вариант с Windows 10 Enterprise multi-session. На LTSC действительно не получается это проделать, но это не беда, нашел обычную Enterprise.
Но вот активацию на локальном KMS ни как проходить не хотел, хотя с другим GVLK ключом активация проходит. Так же активация успешно прошла на левом KMS сервере в интернете.
Гугл еще выдал решения для активации Enterprise multi-session с заменой файлов SKU. Подробнее тут https://msfreemicrosoft.ru/viewtopic.php?t=426 и вот тогда получилось активировать этот ключ на локальном KMS. Но в статье про это ни чего не сказано.
Хочется решения без всякого доп вмешательства, может у нас на KMS чего-то не хватает?
Проверьте версию ключа на вашем KMS сервере:
slmgr.vbs /dlv
Должно быть такое: VOLUME_KMS_WS22 channel
Всё таки и есть:
Имя: Windows(R), ServerStandard edition
Описание: Windows(R) Operating System, VOLUME_KMS_WS22 channel
Канал ключей продуктов: Volume:CSVLK
Состояние лицензии: имеет лицензию
Windows 11 и Windows Server 2022 активацию проходят успешно.
Какая ошибка при активации multisession редакции?
slmgr /ato
Активация Windows(R), ServerRdsh edition (ec868e65-fadf-4759-b23e-93fe37f2cc29) ...
Ошибка: 0xC004F074 Служба лицензирования программного обеспечения сообщила, что данный компьютер не удалось активировать. Связаться со службой управления ключами (KMS) не удалось. Дополнительные сведения см. в журнале событий приложений.
Везде пишут, что это ошибка при проблемах связи с сервером, но при смене GVLK ключа на обычный активация проходит сразу успешно.
Способ с заменой файлов SKU применяется, если эмулятор KMS активирует (
slmgr.vbs
пишет, что активировано), но в параметрах указано, что Windows не активирована.В FAQ Microsoft указано, что эта редакция не активируется KMS. Оригинальным сервером от MS ни разу не пользовался.
Эмуляторы активируют нормально.
WIn 10, RDPWrapper с заменой INI файла. Все работает, но есть проблема с Explorer’ом когда работают 2 и более удаленных пользователя. — Появляются черные полосы и черные области. Например в списке файлов -когда проводишь мышкой, по одной строчке с файлом проявляются.
Как победить, кто знает?
В статья забыли упомянуть что удаленная печать (Easy Print) не работает надо менять параметр SLInitHook.x64 на 0 (для x64)
а соответственно надо редактировать скрипт автообновления ini:
echo [+] copy %rdpwrap_new_ini% to %rdpwrap_ini% and set `SLInitHook.x64=0`...
powershell -Command "(gc '%rdpwrap_new_ini%') -replace 'SLInitHook.x64=1', 'SLInitHook.x64=0' | Out-File -encoding ASCII '%rdpwrap_ini%'"
ветка на гитхабе https://github.com/stascorp/rdpwrap/issues/874
Немного уточню скрипт:
powershell -Command «(gc ‘%rdpwrap_new_ini%’) -replace ‘SLInitHook.x64\s*=\s*1’, ‘SLInitHook.x64=0’ | Out-File -encoding ASCII ‘%rdpwrap_ini%'»
Если не поставить \s* то в случае, если в ini применялось форматирование и добавляли пробели и табуляции — скрипт работать не будет!
Версия: 10.0.19041.844
Версия образа: 10.0.19045.3448
текущий выпуск : Pro
WindowsVersion 2009
поиск в Tiny Hexer:
39 813C 0600 000F 84E7 4301 00
заменить на:
B8 0001 0000 8981 3806 0000 90
————————————
Версия: 10.0.19041.844
Версия образа: 10.0.19045.2965
Текущий выпуск: Pro
WindowsVersion 2009
поиск в Tiny Hexer:
39 813C 0600 000F 8425 4801 00
заменить на:
B8 0001 0000 8981 3806 0000 90
————————————
В других версиях искать: 39 813C 0600 000F 84 ?? ???? ??
недостающие ?? ???? ?? — определить!
заменить на:
B8 0001 0000 8981 3806 0000 90
————————————
сохранить оригинал «termsrv.dll»
Исправленный файл «termsrv.dll» записать на флэшку (в корень).
Загрузиться с любого дистрибутива Windows10 (srv2012 итд).
нажать сочетание клавиши Shift + F10 (откроется x:\windows\system32\cmd.exe)
набрать :
1 — diskpart
2 — list vol (определить какая буква у диска с Вашем Windows10 и какая буква у флэшки с исправленным «termsrv.dll»)
3 — exit (выйти из diskpart)
4 — del D:\windows\system32\termsrv.dll (удалить termsrv.dll)
5 — E: (перейти на флэшку)
6 — copy E:\termsrv.dll D:\Windows\System32 (копирование исправленного файла )
где у меня:
D: диск с установленной Windows 10
E: флэшка
буквы дисков D,E — на Вашем PC могут быть другими.
совет:
Чтобы точно определить буквы дисков (в list vol) , присвойте в Windows им метку.
Например: «OS» — для системного диска и «FL001» для флэшки
Для чего нужен пятый пункт, если в шестом указан полный путь?
Вдруг кому поможет.
Windows 10 22H2
ver. 10.0.19041.3570
заменил в termsrv.dll
39 81 3C 06 00 00 0F 84 F7 40 01 00 на
B8 00 01 00 00 89 81 38 06 00 00 90
все заработало. До этого правил rdpwrap.ini, все было зелёное и показывало типа работает, но по факту не пускал больше одного пользователя.
Строчку для замены нашел по аналогии с рекомендациями автора статьи но у меня немного отличалась, искал по первым символам 39 81 3C 06.
Спасибо автору.
Не удалось изменить параметр Set the Remote Desktop licensing mode (Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing), тк папки Remote Desktop Session Host нет и её нужно ставить отдельно. Видимо через servermanager.exe, которой тоже нет(
Как доустановить отсутствующие папки gpedit.msc?
у вас точно редакция Windows 10 Enterprise Multi-session ?
На редакции Enterprise multi-session роль RDS устанавливается автоматически при первой перезагрузке с включённым удалённым рабочим столом.
Настройка режима лицензирования выполняется только на компьютерах/ВМ, подключённых к домену (это косвенно можно понять из лицензирования «На устройство»).
Windows 10 Enterprise Multi-session не работает архивация Windows. При запуске, выдает ошибка архивация, класс не зарегистрирован. При откате на редакцию Pro все работает
На этой редакции иногда встречаются подобные ошибки. В основном связано с тем, что ProductType = 3 (Server). Опираясь на это Windows пытается найти нужный компонент, но не находит.
В случае с архивацией, возможно, не хватает компонента «Архивация Windows Server». С этим на MyDigitalLife кто-то экспериментировал (в теме Windows 10 ServerRdsh SKU)
Спасибо за ответ. Почитал ветку, действительно данная редакция сплошной геммомрой, лучше использовать Pro или Enterprise с патченным termsvr.dll (делов то пропатчить) или уже переставлять на серверную систему, может в виртуалке Multi-session и менее бепроблемная, но в качестве хоста физической уж точно не годится.
Для версии 19045.4046 не работает.
Скрипт для poershell тоже не работает, не может найти службы для отключения.
Не работает с Windows 11 23H2
RDPWrap.ini обновлять надо!
Нужно попытаться обновить до Enterprise multi-session.
Если редакция с буквой N, то переустановить Windows на редакцию без буквы N.
У меня windows 10 pro 22H2
при попытке найти строку 39 81 3C 06 00 00 0F 84 F7 40 01 00 редактор пишет «a pattern was not found»
Что я делаю не так?
В общем в Windows 10 pro 22H2 сборк 19045.4529 Wraper больше не работает. По крайней мере у меня победить не получилось. ini обновлен, статус whraper везде зеленый, но при больше 1го пользователя войти не дает.
При том что я даже скопировал termsrv.dll с компа, где wraper работает win 10 pro 22h2 19045.4412
Что бы всё работало корректно, внизу ВСЕГДА должна быть пустая строка!
https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Есть ли в итоге какой-то рабочий способ активировать Enterprise Multi-session? Можете поделиться?
Есть. Через KMS или HWID активацию.
Google —> on-line KMS.
Обращаю внимание на то, что данная редакция официально не активируется вне Azure. Использование данной информации на Ваш страх и риск.
Благодарю за ответ!
И такой быстрый)
у меня Windows 8.1 для одного языка. Не могу полцчить к нему доступ через rdp/ разрешено подключение удаленного помощника в настройках,
брандмауер отключен, антивирусов нет, в роутере порт проброшен, но порт закрыт
Ну вопрос вообще не задан. Служба РДП стандартно запускается установкой ключа -разрешить доступ к удаленному столу и добавлением пользователей — кому разрешен административно такой доступ. При подключении к удаленному столу текущий пользователь локально будет отключен. Служба удаленного помощника к этому доступу не имеет никакого отношения и открывает совсем другой порт и естественно рдп работать не будет. Попытайтесь объяснить, чего же вы в итоге хотите?
У кого не ищется последовательность. Ищите по одинаковому у всех началу — 39 81 3C 06 00 00 0F 84 и в найденном добавьте сами следующие 4 пары цифр, у меня нашлось это — 39 81 3C 06 00 00 0F 84 A7 3A 01 00. Теперь меняйте на то что в статье. У меня заработало.
26100.2152 залейте на него библиотеку
Windows 11 Insider Preview Build 26100.2152 Library configuration
Парни Ай Нид хэлп. Как создать или сделать автообновления ini файла постоянно приходится в ручную обновлять. Хочу чтобы 1 раз в месяц обновился автоматический без моего участия, или хотя бы после перезагрузки сервера. Спасибо и С Новым 2025 ГОДОМ
Всё просто — перейти на нормальную серверную систему, потому что совместная работа на десктопной системе до х орошего не доведёт, и проблема исчезнет, не будут нужны костыли по решению того, что не стоит решать.
Все кто хочет и может перейти на нормальный сервер уже это сделали и тематикой текущей статьи не интересуются. Только вот цена входа по железу и ПО напряжна для малых предприятий, у которых 3-5 машин от силы работают, да еще к тому древних, да еще к тому 1С 7 какая-нибудь осталась в наследство и т.д.
https://github.com/asmtron/rdpwrap/raw/master/autoupdate.zip
А чем не устраивает вариант с Enterprise Multi-session ? Все там работает без особых танцев и песен. Один раз сделал и обновлять ничего не надо.
Где взять ключик Enterprise Multi-session для Windows 11 ?
Статья Огонь! не заработал скрипт на 26100.2894 (W11 24H2)
Windows 10 IoT LTSC. Версия 21Н2 (Cборка ОС 19044.5371).
Пропатчил файл «termsrv.dll». Нашёл строку
39 81 3C 06 00 00 0F 84 A7 67 01 00
,перезаписал на
B8 00 01 00 00 89 81 38 06 00 00 90
. И нихрена не поменялось. Как работал максимум один юзер по RDP, так и осталось. Новый подключается – старого выкидывает из сеанса.спасибо, по первому варианту получилось (не забудьте перезагрузить комп)
пишу с RDP ))
Windows 10 Pro 22H2 19045.5487
Windows Feature Experience Pack 1000.19061.1000.0
библиотека находится по пути :
c:\Windows\
WinSxS\
amd64_microsoft-windows-t..teconnectionmanager_31bf3856ad364e35_10.0.19041.4474_none_0350a902098482f7\
termsrv.dll — Размер 1,20 МБ (1 264 128 байт)
искал и правил по инструкции, последовательность
39 81 3C 06 00 00 0F 84
найдена 1 (одна), по адресу 0x1e855
полная последовательность для данной DLL:
39 81 3C 06 00 00 0F 84 A7 67 01 00
и заменена на
B8 00 01 00 00 89 81 38 06 00 00 90
все работает …
P.S.
есть еще 2 библиотеки в том же каталоге в 2х подкаталогах, их не трогал
f \ termsrv.dll — Размер 193 КБ (198 438 байт)
r \ termsrv.dll — Размер 358 КБ (366 594 байт)
Других termsrv.dll в системе не найдено