- Несколько RDP сессий в Windows 10
- Модификация файла termsrv.dll
- RDP Wrapper Library
- Thinstation по русски Всё о лёгком подключении тонкого клиента
- Nav view search
- Навигация
- Искать
- Терминальный сервер из Windows 10
- Несколько одновременных RDP сессий в Windows 10
- Как именно работают ограничения?
- Как обойти?
- 1 способ: сторонние программы
- 2 способ: внутренняя модификация
- Termsrv.dll version 10.0.10240.16384; Win 10 Pro 1909 18363.1110 #1177
- Comments
- VTSharpShooter commented Oct 6, 2020 •
- sk-lau commented Oct 8, 2020
- addrian1 commented Oct 10, 2020
- sk-lau commented Oct 15, 2020
Несколько RDP сессий в Windows 10
Как и в прошлых клиентских версиях операционных систем Майкрософт, пользователи Pro и Enterprise Windows 10 редакций могут удаленно подключаться к своим компьютерам через службу удаленных рабочих столов (RDP). Однако есть ограничение на количество одновременных RDP сессии – возможна одновременная работа только одного удаленного пользователя. При попытке открыть вторую RDP сессию, сеанс первого пользователя предлагается завершить.
По сути, ограничение на количество одновременных rdp подключений является не техническим, а скорее лицензионным, запрещающее создавать на базе рабочей станции RDP сервер для работы нескольких пользователей.
Мы рассмотрим два способа отключить ограничение на количество одновременных RDP подключений к Windows 10:
Модификация файла termsrv.dll
Убрать ограничение на количество RDP подключений можно с помощью модификации файла termsrv.dll (файл библиотеки, используемый службой Remote Desktop Services). Файл находится в каталоге C:\Windows\System32).
Перед модификацией файла termsrv.dll желательно создать его резервную копию (в случае необходимости можно будет вернуться к первоначальной версии файла):
copy c:\Windows\System32\termsrv.dll termsrv.dll_backup
Перед правкой файла termsrv.dll нужно стать его владельцем и предоставить группе администраторов полные права на него (все операции выполняются аналогично описанным в статье Убираем ограничение на количество RDP сессий в Windows 8). Затем остановите службу Remote Desktop service (TermService) из консоли services.msc или из командной строки:
Net stop TermService
Для редакции Windows 10 x64 RTM (версия файла termsrv.dll — 10.0.10240.16384): Откройте файл termsrv.dll с помощью любого HEX редактора (к примеру, Tiny Hexer)
39 81 3C 06 00 00 0F 84 73 42 02 00
И замените ее на:
B8 00 01 00 00 89 81 38 06 00 00 90
Сохраните файл и запустите службу TermService.
Готовый пропатченный файл termsrv.dll для Windows 10 Pro x64 можно скачать здесь: termsrv_windows_10_x64_10240.zip
RDP Wrapper Library
Альтернативой модификации файла termsrv.dll является использования проекта RDP Wrapper Library. Эта программа работает в качестве прослойки между менеджером управления службами (SCM- Service Control Manager) и службой терминалов (Terminal Services) и позволяет включить не только поддержку нескольких одновременных RDP сессии, но и активировать поддержку RDP Host на домашних редакциях Windows 10. RDP Wrapper не вносит никаких изменений в файл termsrv.dll, просто подгружая termsrv с изменёнными параметрами.
Таким образом, это решение будет работать даже при обновлении версии файла termsrv.dll, что позволяет не опасаться обновлений Windows.
Скачать RDP Wrapper можно с репозитория GitHub: https://github.com/binarymaster/rdpwrap/releases (последняя доступная версия RDP Wrapper Library v1.6)
Архив RDPWrap-v1.6.zip содержит несколько файлов:
- RDPWinst.exe —программа установки/удаления RDP Wrapper Library
- RDPConf.exe — утилита настройки RDP Wrapper
- RDPCheck.exe — Local RDP Checker — утилита проверки RDP
- install.bat, uninstall.bat, update.bat — пакетные файлы для установки, удаления и обновления RDP Wrapper
Чтобы установить утилиту, запускам файл install.bat с правами администратора.
После окончания установки запускаем RDPConfig.exe. И удостоверяемся, что в секции Diagnostics все элементы окрашены в зеленый цвет.
Пытаемся открыть вторую RDP сессию. Все получилось! Теперь наша Windows 10 позволяет одновременно подключаться по RDP сразу двум удаленным пользователям.
Еще записи по теме: Windows 10
Thinstation по русски Всё о лёгком подключении тонкого клиента
Nav view search
Навигация
Искать
Все о правильной активации Windows 10 тут
Терминальный сервер из Windows 10
Disclaimer: статья размещена только в познавательных целях.
Чтобы убрать ограничение на количество RDP подключений пользователей в Windows 10 можно изменить файл termsrv.dll. Это файл библиотеки, которая используется службой Remote Desktop Services. Файл находится в каталоге C:\Windows\System32.
Прежде, чем править или заменять файл termsrv.dll желательно создать его резервную копию. Это поможет вам в случае необходимости вернуться к исходной версии файла. Запустите командную строку с правами администратора и выполните команду:
Прежде чем править файл termsrv.dll, вам нужно стать его владельцем и предоставить группе администраторов полные права на него. Проще всего это сделать из командной строки. Чтобы сменить владельца файла с TrustedInstaller на группу локальных администраторов с помощью команды:
Должно появится сообщение: «Успех. Владельцем файла (или папки) «c:\Windows\System32\termsrv.dll» является группа администраторов» или «SUCCESS: The file (or folder): «c:\Windows\System32\termsrv.dll» now owned by the administrators group».
Теперь предоставим группе локальных администраторов полные права на файл termsrv.dll (Full Control):
(или Administrators в англоязычной версии Windows). Должно появится сообщение: «обработанный файл: c:\Windows\System32\termsrv.dll Успешно обработано 1 файлов; не удалось обработать 0 файлов» или «processed file: c:\Windows\System32\termsrv.dll Successfully processed 1 files; Failed processing 0 files«.
Теперь нужно остановить службу Remote Desktop Service (TermService) из консоли services.msc или из командной строки:
Прежде чем идти дальше, вам нужно узнать вашу версию (билд) Windows 10. Проще всего это сделать с помощью следующей команды PowerShell:
Затем откройте файл termsrv.dll с помощью любого HEX редактора (к примеру, Tiny Hexer). В зависимости от билда нужно найти и заменить строку:
Версия Windows 10 | Найти строку | Заменить на |
39 81 3C 06 00 00 0F 84 D9 51 01 00 | B8 00 01 00 00 89 81 38 06 00 00 90 | |
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 RTM 10240 (версия файла termsrv.dll — 10.0.10240.16384) нужно открыть файл termsrv.dll в Tiny Hexer. Затем найдите строку:
39 81 3C 06 00 00 0F 84 73 42 02 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
Преимущество способа включения нескольких RDP сессий в Windows 10 путем замены файла termsrv.dll в том, что на него не реагируют антивирусы.
Основной недостаток — вам придется вручную править файл при каждом обновлении билда Windows 10 (или при обновлении версии файла termsrv.dll в рамках ежемесячных кумулятивных обновлений).
PS
Попалась ещё такая информация:
1903 и 1909 оригинал и патч:
Find:
39 81 3C 06 00 00 0F 84 5D 61 01 00
Replace With:
B8 00 01 00 00 89 81 38 06 00 00 90
Find:
04 74 11 48 8D 15 77
Replace With:
04 EB 11 48 8D 15 77
Find:
58 01 00 00 FF 15 F7
Replace With:
58 00 00 00 FF 15 F7
Альтернативой модификации файла termsrv.dll является использования проекта RDP Wrapper Library.
Эта программа работает в качестве прослойки между менеджером управления службами (SCM- Service Control Manager) и службой терминалов (Terminal Services) и позволяет включить не только поддержку нескольких одновременных RDP сессии, но и активировать поддержку RDP Host на домашних редакциях Windows 10.
RDP Wrapper не вносит никаких изменений в файл termsrv.dll, просто подгружая termsrv с изменёнными параметрами.
Таким образом, это решение будет работать даже при обновлении версии файла termsrv.dll, что позволяет не опасаться обновлений Windows.
Скачать RDP Wrapper можно с репозитория GitHub (последняя доступная версия RDP Wrapper Library v1.6.2)
Несколько одновременных RDP сессий в Windows 10
30 марта 2020 в 19:00
Удаленный рабочий стол на Windows — очень удобная опция для тех, кто не хочет ограничивать себя стационарным рабочим местом. Однако у нее есть ограничение: пользователь может быть только один, физически перед компьютером или удаленно. В части случаев это может быть неудобно.
Сегодня мы оставим без внимания актуальность и варианты использования удаленных рабочих столов, ведь, раз уж вы читаете эти строки, доказывать их полезность вам, скорее всего, не нужно вовсе. Вместо этого мы сосредоточимся на том, как обойти обозначенное выше ограничение и создать более одного подключения одновременно.
Заметим, ограничение носит исключительно программный характер и фактически удаленных пользователей может быть столько, насколько хватит вычислительной мощности вашего ПК. Кроме прочего, это означает, что решаясь на все описанные ниже манипуляции вы нарушаете условия лицензионного соглашения и будете выполнять их на свой риск и страх.
Что ж, это была минутка теории, а теперь пора переходить к практике, где мы разберем, как можно настроить одновременную работу нескольких RDP на Windows.
Как именно работают ограничения?
Первым делом уточним, что работают удаленные рабочие столы исключительно на версиях Windows Pro и выше, тогда как на домашней (Windows Home) эта опция не доступна в принципе. Также, как мы уже уточнили выше, подключение может быть только одно: либо локально на интересующем нас ПК, либо удаленно, две и более сессии пользователям недоступны. При попытке нового подключения, система выдаст предупреждение о том, что текущий пользователь будет отключен и запросит подтверждение для продолжения работы.
Как обойти?
1 способ: сторонние программы
Надо признать, оба описанных способа имеют свои ограничения и особенности, которые мы также уточним, но именно этот метод кажется нам наименее проблемным и простым как при подключении, так и для дальнейшего использования.
Для одновременного подключения нескольких RDP мы будем использовать программу RDP Wrapper. Это OpenSource-проект, следить за которым вы можете на GitHub. Кроме нескольких RDP сессий, данная программа позволит реализовать удаленный доступ, в том числе, на Windows Home, и если необходимо, под одной учетной записью, скрыть список пользователей на экране приветствия, создать теневое RDP подключение и другое.
Чтобы установить и подготовить программу к использованию, выполняем следующие шаги:
- Скачиваем RDP Wrapper из репозитория GitHub по ссылке
- В получившемся архиве находим и запускаем файл install.bat, не забывая о правах администратора.
- После установки, обратим внимание на файл RDPConfig.exe (его вы найдете в том же архиве). Здесь нас интересует раздел Diagnostics, где все элементы должны быть окрашены в зеленый цвет. Если вместо [fully supported] вы видите [not supported], программа нуждается в обновлении. Нет возможности обновить полностью — скачайте отдельно файл rdpwrap.ini с ресурса разработчика и сохраните его по пути C:\Program Files\RDP Wrapper\rdpwrap.ini. Этот же способ нужно использовать для самых новых версий Windows.
- В качестве проверки, запускаем файл RDPCheck.exe или создаем удаленное подключение. Если все сделано правильно, две и более сессий будут работать параллельно.
Также сразу обратим внимание читателей, что антивирусы данную программу, мягко говоря, недолюбливают, считая её вредоносным ПО, будьте готовы.
2 способ: внутренняя модификация
Этот способ подходит для пользователей Windows 10 и не требует установки сторонних приложений, однако требует бОльших, по сравнению с первым вариантом, навыков работы, в частности, с командной строкой. Есть и еще одна сложность, правку файла termsrv.dll (а именно этим мы будем заниматься) придется повторять после каждой установки новой версии системы.
Итак, интересующий нас файл можно найти по пути C:\Windows\System32 и прежде чем мы начнем, желательно создать его резервную копию. Если все пройдет как надо — она не понадобится, а если нет — сбережет вам немало нервных клеток. Для этого делаем следующее: запускаем командную строку с правами администратора и вводим команду:
Кроме того, нам понадобится информация об установленной версии (билде) Windows 10. Это проще всего узнать, введя в PowerShell: “Get-ComputerInfo | select WindowsProductName, WindowsVersion”. Билд обозначается четырьмя цифрами, указывающими на год и месяц его выпуска. Впрочем, это скорее теоретические сведения, нас интересует лишь сам номер, его можно просто запомнить.
Теперь можно смело переходить к собственно правке файла. Для этого нам нужно проделать следующие шаги:
Termsrv.dll version 10.0.10240.16384; Win 10 Pro 1909 18363.1110 #1177
Comments
VTSharpShooter commented Oct 6, 2020 •
I am trying to use RDPWrapper to concurrently allow both a local user and a remote user onto the same Windows 10 Pro machine at the same time. Windows 10 version is currently 1909 18363.1110. Original version of termsrv.dll was present in system32 directory.
I installed using install.bat; ran it as an administrator; which downloaded and installed the latest RDPWrap.ini file.
RDPConfig shows:
Wrapper Status: Installed
Service State: Running
Listener State: Listening, BUT [Not Supported>
Interestingly, Remote Desktop access still works — but it works as the original Remote Desktop did, meaning that the incoming user is warned that the local user must disconnect with the local user being asked if they wish to disconnect or not; still only one user allowed.
I ran update,bat, but I believe I need an updated .INI file for my version of termsrv.dll?
Please advise, or are there instructions for modifying an existing RDPWrap.ini for my version of termsrv.dll?
The text was updated successfully, but these errors were encountered:
sk-lau commented Oct 8, 2020
I am trying to use RDPWrapper to concurrently allow both a local user and a remote user onto the same Windows 10 Pro machine at the same time. Windows 10 version is currently 1909 18363.1110. Original version of termsrv.dll was present in system32 directory.
I installed using install.bat; ran it as an administrator; which downloaded and installed the latest RDPWrap.ini file.
RDPConfig shows:
Wrapper Status: Installed
Service State: Running
Listener State: Listening, BUT [Not Supported>
Interestingly, Remote Desktop access still works — but it works as the original Remote Desktop did, meaning that the incoming user is warned that the local user must disconnect with the local user being asked if they wish to disconnect or not; still only one user allowed.
I ran update,bat, but I believe I need an updated .INI file for my version of termsrv.dll?
Please advise, or are there instructions for modifying an existing RDPWrap.ini for my version of termsrv.dll?
I believe this version of the .INI will work. Please replace your current ini with this version
addrian1 commented Oct 10, 2020
Я пытаюсь использовать RDPWrapper, чтобы одновременно разрешить как локальному пользователю, так и удаленному пользователю работать на одном компьютере с Windows 10 Pro одновременно. Версия Windows 10 в настоящее время — 1909 18363.1110. Исходная версия termsrv.dll находилась в каталоге system32.
Я установил с помощью install.bat; запустил его как администратор; который загрузил и установил последний файл RDPWrap.ini.
RDPConfig показывает:
Состояние оболочки: Состояние установленной
службы : Состояние работающего
прослушивателя: Прослушивание, НО [не поддерживается>
Интересно, что доступ к удаленному рабочему столу по-прежнему работает, но он работает так же, как и исходный удаленный рабочий стол, а это означает, что входящий пользователь получает предупреждение о том, что локальный пользователь должен отключиться, а локального пользователя спросят, хотят ли они отключиться или нет; по-прежнему разрешен только один пользователь.
Я запустил update, bat, но считаю, что мне нужен обновленный .INI-файл для моей версии termsrv.dll?
Посоветуйте, пожалуйста, или есть инструкции по модификации существующего RDPWrap.ini для моей версии termsrv.dll?
СПАСИБО.
Я считаю, что эта версия .INI будет работать. Пожалуйста, замените ваш текущий ini на эту версию
Hello!
With this file, the Remote Desktop Service will not start
sk-lau commented Oct 15, 2020
Я пытаюсь использовать RDPWrapper, чтобы одновременно разрешить как локальному пользователю, так и удаленному пользователю работать на одном компьютере с Windows 10 Pro одновременно. Версия Windows 10 в настоящее время — 1909 18363.1110. Исходная версия termsrv.dll находилась в каталоге system32.
Я установил с помощью install.bat; запустил его как администратор; который загрузил и установил последний файл RDPWrap.ini.
RDPConfig показывает:
Состояние оболочки: Состояние установленной
службы : Состояние работающего
прослушивателя: Прослушивание, НО [не поддерживается>
Интересно, что доступ к удаленному рабочему столу по-прежнему работает, но он работает так же, как и исходный удаленный рабочий стол, а это означает, что входящий пользователь получает предупреждение о том, что локальный пользователь должен отключиться, а локального пользователя спросят, хотят ли они отключиться или нет; по-прежнему разрешен только один пользователь.
Я запустил update, bat, но считаю, что мне нужен обновленный .INI-файл для моей версии termsrv.dll?
Посоветуйте, пожалуйста, или есть инструкции по модификации существующего RDPWrap.ini для моей версии termsrv.dll?
СПАСИБО.
Я считаю, что эта версия .INI будет работать. Пожалуйста, замените ваш текущий ini на эту версию
https://www87.zippyshare.com/v/Aw6BRt2I/file.html
Hello!
With this file, the Remote Desktop Service will not start
I tried this INI with Windows 10 version 2002 Home and Pro version and it works