bga68comp: (Default)
bga68comp ([personal profile] bga68comp) wrote2018-10-07 03:42 pm

Как настроить размер шрифтов в клиенте удаленного рабочего стола RDP

IGOR "WALKER" SHASTITKO

Как настроить нормальный масштаб интерфейса, размер фонтов в клиенте удаленного рабочего стола RDP при высоком разрешении экрана–самый простой и работоспособный вариант (Remote Desktop DPI scaling issues)



У меня появился новый ноутбук – можно сказать, классика рабочего жанра – Lenovo ThinkPad T580. В этом ноуте все отлично – и характеристики его железа (на канале будет отдельный обзор), и, собственно дизайн, вес и прочие эргономические вещи… И как главная плюшка – у ноута отличный 15” экран с разрешением 3840х2160 – 4К.

Но, как часто бывает – все эти плюшки не только приятны, но и имеют отрицательные стороны. Вы видели, какой масштаб PPI (DPI) стоит для таких вот 15” экранов 4К 3840х2160, подобных Lenovo ThinkPad T580?! – правильно, 250% по умолчанию! Т.е. именно настолько масштабируется изображение, чтобы текст на экране был читаемый глазом, а в элементы управления можно было попадать мышкой. Кто не знаком с эффектом DPI/PPI на маленьких экранах с большим разрешением (от 4К и выше) – рекомендую заглянуть в настройки дисплея в Windows и там поиграться в настройками Scaling’а. А для наглядности – вот вам картинка для сравнения вида интерфейса в масштабе 100% и 225%

100-225-comparison

Итак, метод лечения проблемы масштабирования интерфейса для стандартного RDP клиента Microsoft крайне прост и заключается в копировании специального файла-манифеста для RDP, который собственно и содержит в себе команду включения того самого масштабирования для удаленного подключения:


  1. Правим на локальной машине (где вы и используете RDP и где у вас, надеюсь, есть все права админа) реестр, указывая, что стандартный RDP клиент должен брать настройки из файла манифеста:


  1. Запускаем утилиту regedit и идем по следующему пути:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide

  1. Создаем новый параметр, кликнув на пустом поле справа правой кнопкой мышки NEW -> DWORD (32 bit) Value

  2. Вводим имя нового параметра PreferExternalManifest и жмем ENTER.

  3. Снова кликаем правой кнопкой мыши, теперь уже по записи PreferExternalManifest, и выбираем Modify.

  4. Вводим в Value Data значение 1 и выбираем пункт Decimal.

  5. Нажимаем в окошке OK.

  6. Закрываем Registry Editor.

Результат должен выглядеть примерно следующим образом:
Registry-RDP-manifest

  1. Далее, нужно создать файл самого манифеста под именем mstsc.exe.manifest и поместить его в папку %SystemRoot%\System32\mstsc.exe.manifest (обычно это C:\Windows\System32\mstsc.exe.manifest). Полный текст содержимого mstsc.exe.manifestприведен ниже, уже готовый файл mstsc.exe.manifest можете забрать здесь.

Далее – запускаем стандартный Microsoft клиент RDP (mstsc.exe) или перезапускаем его (если на момент изменений были открыты какие-то RDP сессии) и наслаждаемся соответствующим масштабу вашего локального экрана виду удаленного экрана. В реальности, данный фикс настроек RDP клиента работает очень просто – RDP клиент отправляет запрос на такое разрешение удаленного экрана, которое на соответствующий масштабу процент меньше, чем оригинальное у клиента – так что не удивляйтесь «странным» цифрам в разрешении удаленного рабочего стола. Например, если у меня разрешение 4К 3840х2160 при 225% масштаба, то разрешения удаленного стола будет установлено обновленным RDP клиентом для полноэкранной картинки как 1704х960 (как раз те самые 3840/2,25 и т.д.) – и все элементы удаленного интерфейса соответствуют масштабу.

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>
<assembly xmlns=”urn:schemas-microsoft-com:asm.v1″ manifestVersion=”1.0″ xmlns:asmv3=”urn:schemas-microsoft-com:asm.v3″><dependency>
<dependentAssembly>
<assemblyIdentity
type=”win32″
name=”Microsoft.Windows.Common-Controls”
version=”6.0.0.0″ processorArchitecture=”*”
publicKeyToken=”6595b64144ccf1df”
language=”*”>
</assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity
type=”win32″
name=”Microsoft.VC90.CRT
version=”9.0.21022.8″
processorArchitecture=”amd64″
publicKeyToken=”1fc8b3b9a1e18e3b”>
</assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns=”urn:schemas-microsoft-com:asm.v3″>
<security>
<requestedPrivileges>
<requestedExecutionLevel
level=”asInvoker”
uiAccess=”false”/>
</requestedPrivileges>
</security>
</trustInfo>
<asmv3:application>
<asmv3:windowsSettings xmlns=”http://schemas.microsoft.com/SMI/2005/WindowsSettings”&gt;
<ms_windowsSettings:dpiAware xmlns:ms_windowsSettings=”http://schemas.microsoft.com/SMI/2005/WindowsSettings”>false</ms_windowsSettings:dpiAware&gt;</asmv3:windowsSettings>
</asmv3:application>
</assembly>

Источник:

Как настроить нормальный масштаб интерфейса, размер фонтов в клиенте удаленного рабочего стола RDP при высоком разрешении экрана–самый простой и работоспособный вариант (Remote Desktop DPI scaling issues)


Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting