Rdpwrap ini windows 10 20h2

NOT UPDATED Windows 10 v20H2 10.0.19042.630 #1209

Comments

johnh92 commented Nov 17, 2020

Does someone have the .ini file for Windows 10 version 1909 10.0.18363.1198

The text was updated successfully, but these errors were encountered:

CrAsH0v3r commented Nov 17, 2020

Take a look at my issue #1208.
It’s still not working in my case, but may be it will in yours.

yanhuixie commented Nov 18, 2020 •

ini-19041.330.zip
@johnh92 You may try my ini files. Work fine with 19041.330, I’m not sure they’ll work with 19042.630.
By the way, my termsrv.dll version is 19041.84.

francesco74 commented Nov 18, 2020

in my 10.0.19042.630 the @yanhuixie ini file works ! Thanks.

hexbinoct commented Nov 20, 2020

I have been looking to work rdpwrap for 19042.630, searched a couple of posts, now came here and I have a question, suppose the rdpwrap starts working on my installation 19042.630, will this stop working when windows 10 is updated? Because it seems there is a new ini file for each version of windows 10?

hexbinoct commented Nov 20, 2020

ini-19041.330.zip
@johnh92 You may try my ini files. Work fine with 19041.330, I’m not sure they’ll work with 19042.630.
By the way, my termsrv.dll version is 19041.84.

hey thanks your file worked for me:

posting image in case it helps any confused soul.

My win version is 20H2 (OS Build 19042.630)

But will it keep working once the terminal service version changes?

20H2 Build: 19041.789 Not working #1314

Comments

vgisbert commented Feb 3, 2021

The text was updated successfully, but these errors were encountered:

vgisbert commented Feb 3, 2021

Thanks for your hard work

mariopedroSpo commented Feb 3, 2021

nagyimre1980 commented Feb 3, 2021

no solution so not good (

yuasa54 commented Feb 3, 2021

yeah for now 789 build not in the wrapper ini file. so if you have autoupdater when they update the ini you will have it

snipper12343 commented Feb 3, 2021

Can someone post the new INI please?

snipper12343 commented Feb 3, 2021

@yuasa54 can you please post your new ini file or copy the lines? thank you

MarcinWerra commented Feb 3, 2021

nagyimre1980 commented Feb 3, 2021

emanuelvittar commented Feb 3, 2021

It fully works! Thanks.

vgisbert commented Feb 3, 2021

Nice reverse engineering job. Thank you.

dmcdivitt commented Feb 4, 2021

MarcinWerra’s change worked for me.

Читайте также:  Canon mf230 драйвер linux

vgisbert commented Feb 4, 2021

It fully works! Thanks MarcinWerra .

malicon commented Feb 4, 2021

MarcinWerra Thank you. It works great.

Lux-91 commented Feb 11, 2021

@MarcinWerra there is any guide/tutorial/article where i can try to learn how to update the ini file by myself?
Thx 🙂

MarcinWerra commented Feb 11, 2021

When I tried to create the parameters for the .ini file myself for the first time, I watched the video on Youtube very carefully «Practical reverse engineering (for RDP Wrapper)»
You can read the issue «How to add support to a new Windows build? How to get the offset for the ini file? #1098»
or malicon’s answer.

lha314981 commented Feb 14, 2021

Single session per user
doesn’t work
best regards

owencamilo commented Feb 16, 2021

Single session per user
doesn’t work
best regards

MarcinWerra commented Feb 16, 2021

SingleUserOffset.x64=0CB22

lha314981 commented Feb 16, 2021 •

here more precise test

in both cases ie
SingleUserOffset.x64=0CA4C
and
SingleUserOffset.x64=0CB22
setting Single session per user has no effect

—testing from host computer
i’m using client 5.1.2600.2180 (distibution client doesn’t connect)

connecting with user name and password entered In client works as Single session per user set active
disconected session is reused

connecting with user name and password entered on logon screen works as Single session per user set inactive
always new session is opened

—testing from remote computer
5.1.2600.2180 and distibution client works the same
behaviour is as above

mixing both types of login behaves as Single session per user set inactive

MarcinWerra commented Feb 17, 2021

In the rdpconf.exe application, set:

After that, run the command:
RDPWInst -r
(to restart the remote desktop service)

I tested multi-session per user by connecting using client applications from Windows 10 and XP.

lha314981 commented Feb 17, 2021 •

I stand by my opinion
setting Single session per user has no effect

however
Authentication mode works as follows

GUI authentication only (windows login screen) — enables many sessions for same user, each login creates a new session, disconected sessions are not reused, disconected users should be logged out via (fe.) task manager->users->logoff user

Network level authentication (client login dialog) — makes that user can open one (mostly) rdp session, disconected session (one) is reused, if there is more disconeccted sessions, then system behaves as above.

question is: do code which handles «Single session per user» functionality could be patched ?
if it doesn’t works it is possible that it changes some random code
so maybe
SingleUserPatch.x64 set to 0
see RDPWrap.cpp line 723 and below

ps.
p. Marcinie ma Pan już to jakkolwiek ogarnięte, może się Panu uda znaleźć właściwe rozwiązanie
życzę powodzenia
pozdrawiam

MarcinWerra commented Feb 18, 2021

@lha314981 setting Single session per user has no effect

I cannot reproduce your problem.
I tested RDPWrap on dozens of computers with version 19041.789 and it works fine with Single session per user.

do code which handles «Single session per user» functionality could be patched ?
if it doesn’t works it is possible that it changes some random code

Lines 722 to 740 in a5c64a4

# ifdef _WIN64
if (!(IniFile-> GetVariableInSection (Sect, » SingleUserPatch.x64 » , &Bool))) Bool = false ;
# else
if (!(IniFile-> GetVariableInSection (Sect, » SingleUserPatch.x86 » , &Bool))) Bool = false ;
# endif
if (Bool)
<
WriteToLog ( » Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled \r\n » );
Bool = false ;
# ifdef _WIN64
SignPtr = (PLATFORM_DWORD)(TermSrvBase + INIReadDWordHex (IniFile, Sect, » SingleUserOffset.x64 » , 0 ));
Bool = IniFile-> GetVariableInSection (Sect, » SingleUserCode.x64 » , &PatchName);
# else
SignPtr = (PLATFORM_DWORD)(TermSrvBase + INIReadDWordHex (IniFile, Sect, » SingleUserOffset.x86 » , 0 ));
Bool = IniFile-> GetVariableInSection (Sect, » SingleUserCode.x86 » , &PatchName);
# endif
if (Bool) Bool = IniFile-> GetVariableInSection ( » PatchCodes » , PatchName. Value , &Patch);
if (Bool && (SignPtr > TermSrvBase)) WriteProcessMemory ( GetCurrentProcess (), (LPVOID)SignPtr, Patch. Value , Patch. ArraySize , &bw);
>

With the patch SingleUserOffset.x64 = 0CB22, SingleUserCode.x64 = Zero is patched CSessionArbitrationHelper::IsSingleSessionPerUserEnabled

Читайте также:  Как поменять сборку windows 10 1607

But the strangest thing is that, with the patch disabled by SingleUserPatch.x64 = 0, it also works fine for single session per user and multi session connections.

PS. @lha314981 🙂 Może prędzej się dogadamy po polsku. (Proszę odezwać się przez Messenger https://www.facebook.com/WerraMarcin/)

Mindaugas85 commented Feb 22, 2021 •

So at least RDP Wrapper is working on halfway.
RDP multisession working, but not printer redirection 🙁 and it’s very saaaad.
When copying old rdpwrap ini file — printers working, but not RDP multisession,
if but I changing ini file to support [10.0.19041.789] Windows 10 20H2 multisession — after restarting pc — printers are disappearing, only leaving to redirect «Pdf creators», One notes and others non-real printers.
Termsrv.dll I haven’t modified.

INFO UPDATE
I forgot to mention one thing,
When I’m using unsupported rdp ini file, all printers redirecting,
then updating ini file after closing and saving file without pc restarting.
then and RDP working with multisession and printers redirecting, BUT BUT BUT — when i’m doing OS restart. redirected printers disappiering and working onlu RDP multissession 🙁
IN RDP config windows -showing that everuthin green and ok.

Сервер терминалов на Windows 10

Существует популярная и удобная возможность сделать из обычной, не серверной версии windows 10 терминальный сервер. После настройки к обычному компьютеру с windows на борту смогут одновременно подключаться несколько пользователей по rdp и работать. Наиболее популярное применение такого решения — работа нескольких пользователей с файловой базой 1С.

Введение

Ранее я описывал способ, как сделать терминальный сервер из Windows 7. Сейчас актуальна современная операционная система Windows 10. В связи с тем, что поддержка Windows 7 уже закончена, всем так или иначе со временем придется работать в Windows 10, даже если предыдущая версия вас полностью устраивает.

Полезная возможность сделать из обычной Window 10 терминальный сервер. Ранее я не один раз использовал эту функцию для работы в файловой 1С нескольких человек одновременно. Для небольшого коллектива из нескольких сотрудников это вполне удобно и оправданно, так как покупать полноценный сервер и серверную ОС для таких задач нецелесообразно.

Сразу сделаю важное замечание. Я не рекомендую использовать сервер терминалов на основе windows 10 там, где критично, чтобы все работало стабильно и простой недопустим. Часто после обновлений слетает настроенный функционал и восстановить его работу не всегда получится быстро. Имейте это ввиду.

Превращаем Windows 10 в сервер терминалов

Использовать будем привычное средство, которое хорошо себя зарекомендовало в Windows 7 — RDP Wrapper Library by Stas’M. Скачивайте последнюю версию либо с сайта создателя, либо с githab — https://github.com/stascorp/rdpwrap/releases. Последняя версия от 2017 года и из-за этого возникает множество проблем во время настройки, о которых я расскажу далее. Скорее всего у вас не заработает терминальный сервер, если вы возьмете только предложенный дистрибутив.

Архив состоит из нескольких файлов:

Настраивать терминальный сервер будем на следующей системе:

Это достаточно старый LTSB дистрибутив со всеми установленными обновлениями на момент актуализации статьи. Взял специально для примера эту не самую свежую, но и не сильно старую версию, которая все еще поддерживается.

Загружайте архив и распаковывайте его в папку. Затем запускаете командную строку с правами администратора. Чтобы это сделать, нажимаете Пуск -> Все приложения:

Ищите в самом низу раздел Служебные — Windows, в нем приложение Командная строка, запускаете ее от имени администратора:

В командной строке переходите в папку с распакованной программой с помощью команды cd и запускаете файл install.bat:

После успешной установки увидите информацию:

Создавайте новых пользователей, добавляйте их в группу Пользователи удаленного рабочего стола и проверяйте. Если получится и все заработает сразу — вам повезло. Пользуйтесь.

Если ничего не помогает и у вас никак не работает терминальное подключение для других пользователей, давайте разбираться дальше, в чем тут дело.

Не работает терминальный сервер в Windows 10

Если у вас изначально не заработал терминальный сервер на windows 10 и количество rdp подключений ограничено одним. Либо если у вас после обновление сломался терминальный доступ, то давайте разбираться, что с этим делать.

Читайте также:  Python3 pip astra linux

Для начала запустите утилиту RDPConf.exe и посмотрите ее вывод.

Значение listener state [not supportet] намекает на то, что у нас проблемы и rdp wrapper не работает. Проблема тут в том, что практически под каждую версию Windows 10 нужен свой файл конфигурации rdpwrap.ini. Так как автор давно забросил свою программу, автоматически эти конфигурации не обновляются. Их нужно либо писать самому, если понимаешь, как именно, либо искать где-то в интернете. Проще всего посмотреть в обсуждении проблем в репозитории на github — https://github.com/stascorp/rdpwrap/issues. Либо еще один вариант — репозиторий с утилитой для автоматического обновления rdpwrap.ini — https://github.com/asmtron/rdpwrap/. Там есть архив autoupdate.zip, который регулярно обновляется. Можно попробовать воспользоваться им.

Для того, чтобы на моей версии windows 10 заработал терминальный сервер, я через поисковики нашел файл конфигурации 10.0.14393.3503.txt под свою версию системы. Я взял содержимое этого файла и добавил его в существующий файл C:\Program Files\RDP Wrapper\rdpwrap.ini в самый конец.

После этого запустил еще раз RDPConf.exe.

Статус изменился на [fully supported] . Теперь нужно перезагрузить компьютер. После этого запустите утилиту RDPCheck.exe и убедитесь, что можно подключиться второй учетной записью к компьютеру.

У меня заработал терминальный доступ к windows 10 через 2 разные учетные записи.

Как починить rdpwrap после обновления windows

Если вы нигде не можете найти файл конфигурации rdpwrap.ini под вашу версию системы, то можно попробовать сделать следующий трюк. В некоторых случаях это помогает. По крайней мере у меня так иногда получалось.

Вам нужно найти рабочую конфигурацию под максимально близкую к вам версию. Далее просто в текстовом редакторе поменяйте указанную там версию на свою. Если разница в версиях не сильно большая, может помочь. Я видел в issues на гитхабе информацию о том, что получалось сразу же после поломки терминального доступа после очередного обновления, отредактировать конфиг под новую версию и все снова продолжало работать.

Так же в одном из обсуждений на github была предложена утилита с автоматическим обновлением rdpwrap.ini. Называется Automatic RDP Wrapper installer and updater — https://github.com/stascorp/rdpwrap/pull/859. Описание и инструкция по использованию есть внутри архива. Судя по отзывам, штука неплохая, работает. Если кратко, то пользоваться так:

  1. Скачиваем архив
  2. Распаковываем в Program Files\RDP Wrapper
  3. От имени администратора запускаем Program Files\RDP Wrapper\autoupdate.bat
  4. Проверяем конфигурацию через RDPConf.exe и пробуем подключаться.

В целом про превращение windows 10 в сервер терминалов для одновременного подключения и работы нескольких пользователей по rdp у меня все. Все очень легко и просто, можно использовать по необходимости для решения прикладных задач.

Часто задаваемые вопросы по теме статьи (FAQ)

Однозначно, да. У Microsoft есть отдельный продукт и отдельная программа лицензирования для работе в терминале. И все это стоит немалых денег. Так что создавая терминал из windows 10 вы точно нарушаете условия лицензионного соглашения.

Надежнее всего отложить обновление и подождать, пока не появится rdpwrap.ini под новую версию обновленной системы. После этого можно самому обновиться и обновить конфигурационный файл.

Судя по всему, да. Обновлений давно не было. Меняются только конфигурационные файлы rdpwrap.ini, которые обновляет сообщество. Сама программа при этом не обновляется.

Да, не работает. Если вы все сделали правильно, то можно работать как локально, так и удаленно одновременно разным пользователям. Если одновременно не получается работать больше, чем одному пользователю, значит терминальный режим в windows 10 не работает.

Я не рекомендую так делать. В настоящее время это очень опасно. В протоколе rdp регулярно находят уязвимости, через которые на ваш компьютер может попасть, к примеру, шифровальщик. Необходимо учитывать эти риски и время от времени обновляться, либо полностью закрывать несанкционированный доступ к компьютеру.

Заключение

Нужно понимать, что подобное использование Windows 10 скорее всего является нарушающим лицензионное соглашение. Хотя я не знаю, каким именно пунктом и условием это регламентируется, но наверняка что-то подобное в лицензионном соглашении есть, так как подобный способ распространен еще со времен XP. Имейте это ввиду, если будете настраивать в компании, которая следит за лицензионной чистотой.

Оцените статью