У меня появился новый ноутбук – можно сказать, классика рабочего жанра – Lenovo ThinkPad T580. В этом ноуте все отлично – и характеристики его железа (на канале будет отдельный обзор), и, собственно дизайн, вес и прочие эргономические вещи… И как главная плюшка – у ноута отличный 15” экран с разрешением 3840х2160 – 4К.
Но, как часто бывает – все эти плюшки не только приятны, но и имеют отрицательные стороны. Вы видели, какой масштаб PPI (DPI) стоит для таких вот 15” экранов 4К 3840х2160, подобных Lenovo ThinkPad T580?! – правильно, 250% по умолчанию! Т.е. именно настолько масштабируется изображение, чтобы текст на экране был читаемый глазом, а в элементы управления можно было попадать мышкой. Кто не знаком с эффектом DPI/PPI на маленьких экранах с большим разрешением (от 4К и выше) – рекомендую заглянуть в настройки дисплея в Windows и там поиграться в настройками Scaling’а. А для наглядности – вот вам картинка для сравнения вида интерфейса в масштабе 100% и 225%
При чем здесь DPI/PPI и масштабирование, спросите вы? А при том, что представьте себе, что у вас есть приложение, которое ничего не знает о том, в каком масштабе отображать картинку внутри себя и никакого масштабирования внутри такого приложения не происходит. В результате – внутри окна приложения будет все настолько мелким, насколько это выглядит таковым в приведенном выше примере (слева).
И таким вот нужным и часто используемым приложением, которое «не понимает масштабирования» для экранов с большим разрешением – является Microsoft Remote Desktop Client (да и многие прочие клиенты удаленного рабочего стола RDP). При подключении к удаленному компьютеру – рабочий стол этого компьютера в RDP выглядит катастрофически мелким, поскольку картинка RDP оттуда – отображается с масштабированием DPI удаленного сервера, которое может быть и 150%, и даже 100%. Работать с таким удаленным интерфейсом на экране 4К размером 15” – нереально, курсора мышки иногда просто не видно 😉
Так поменять масштабирование на удаленном сервере!!! – ага, сейчас, по умолчанию на сервере такая опция заблокирована – для изменения масштабирования интерфейса в сеансе RDP на сервере надо провести шаманские пляски (если у вас есть права на это), да и не будешь на каждом сервере это менять…
Итого, остается только вариант научить клиента удаленного рабочего стола RDP («родного» Microsoft’овского или какого либо другого) понимать масштабирование и учитывать это при соединении с удаленным сервером.
После достаточно длительного поиска в Инете и чтения разных «рецептов танцев с бубнами» вокруг проблемы масштабирования DPI/PPI в RDP, я пришел к выводу, что самым работоспособным рецептом решения проблемы является вариант, описанный в статье [Fix] Remote Desktop DPI scaling issues. Во избежание потери информации (если вдруг страницу или файлы удалят, сайт закроют) – сделаю вольный перевод предложенного материала/копию файлов и у себя на блоге.
Итак, метод лечения проблемы масштабирования интерфейса для стандартного RDP клиента Microsoft крайне прост и заключается в копировании специального файла-манифеста для RDP, который собственно и содержит в себе команду включения того самого масштабирования для удаленного подключения:
-
Правим на локальной машине (где вы и используете RDP и где у вас, надеюсь, есть все права админа) реестр, указывая, что стандартный RDP клиент должен брать настройки из файла манифеста:
-
Запускаем утилиту regedit и идем по следующему пути:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide -
Создаем новый параметр, кликнув на пустом поле справа правой кнопкой мышки NEW -> DWORD (32 bit) Value
-
Вводим имя нового параметра PreferExternalManifest и жмем ENTER.
-
Снова кликаем правой кнопкой мыши, теперь уже по записи PreferExternalManifest, и выбираем Modify.
-
Вводим в Value Data значение 1 и выбираем пункт Decimal.
-
Нажимаем в окошке OK.
-
Далее, нужно создать файл самого манифеста под именем 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”>
<ms_windowsSettings:dpiAware xmlns:ms_windowsSettings=”http://schemas.microsoft.com/SMI/2005/WindowsSettings”>false</ms_windowsSettings:dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
Немного дополнительных life-хаков о том, как:
- Как восстановить “сдохшую” microSD, SD или USB, которая не хочет форматироваться
- Какую быструю microSD карточку купить для работы с 4K видео, большими фото, time lapse и т.п.?–тестирование скорости работы microSD U3 от Samsung, SanDisk, Kingston, Transcend и “китайских ноунейм” Toshiba, OV, LonDisk
- Как удалить CD раздел с USB флешки, снять режим “только чтение”, проверить реальный рабочий размер
- Как правильно очистить место на системном диске Windows (C:) и ничего не сломать (от Игоря Шаститко)
- Подробно: почему и как “сдохла” microSD/SD, флешка в телефоне, камере и как с этим бороться
- Как правильно и безопасно удалить вирусы, трояны, rootkit’ы с вашего ПК – подробная инструкция
- Как создать Microsoft Account (учетную запись Microsoft), почему не работает Microsoft Account?
- СофТы: простой способ установки Windows 2000/Windows XP на телефон Android (Limbo)
И еще немного дополнительных материалов, посвященных ИТ тематике у меня на YouTube-канале iWalker2000 и тут на блоге. Надеюсь, сисадмины и те, кто ими собирается стать – найдут данные материалы тоже интересными для себя.
Первые серии нового курса по использованию Azure IaaS:
- Использование инфраструктуры Azure для системных администраторов, часть 1 – 15 шагов ДО облаков
- Использование инфраструктуры Azure для системных администраторов, часть 2 – виртуальный облачный ЦОД
- Использование инфраструктуры Azure для сисадминов, часть 4 – основные инструменты управления в Azure
- Использование инфраструктуры Azure для сисадминов, часть 5 – что такое Resource Group в Azure
Видео об ИТ-карьере – как стать ИТ-специалистом и заработать много денег:
И смотрите другие видео для ИТ-специалистов у меня на канале:
Видео про новые возможности дисков и дисковых массивов:
Подписывайтесь на мой Youtube канал iWalker2000 – для подписки просто кликните сюда
Также, по просьбам посетителей – меня найти можно (добавляйтесь в друзья и подписчики):
-
мой канал на YouTube – www.youtube.com/iwalker2000 ;
-
в Facebook – http://www.facebook.com/igor.shastitko ;
-
в VK – http://vk.com/id194611286 ;
-
в Twitter – http://twitter.com/iwalker2000 ;
-
в Linkedin – https://www.linkedin.com/in/iwalker2000 ;
-
подробно обо мне здесь, на моем персональном техническом блоге – https://iwalker2000.wordpress.com/about/ .
Эмиграция для ИТ-профессионалов в Европу! Оформление ВНЖ в Словакии, возможность работы со всеми странами ЕС, открытие фирм, ЧП с соответствующими видами деятельности, оформление документов для членов семьи. Быстро, качественно, дешево и абсолютно легально ВНЖ в Словакии. www.slovakiago.com |