пятница, 24 января 2020 г.

Масштабирование шрифтов в приложениях RemoteApps в Windows 10

Никогда такого не было, и вот опять. При тестировании приложений RemoteApps на клиентах под Windows 10 обнаружилось, что решение для Windows 7 не работает - Microsoft никогда не даст загрустить без дела ни пользователю, ни системному администратору.

Зрение надо беречь, шрифт должен быть удобным

Итак, ситуация - терминальный сервер под Windows 2012R2, приложение 1С8 в RemoteApps, клиент под Windows 10. Все настройки полностью идентичны клиенту под Windows 7, но в итоге в 1С шрифт мелкий, работать неудобно. В теории в связке сервер под Windows 2012R2 - клиент под Windows 10 терминальные приложения должны отображаться в масштабе клиента. Всё хорошо, всё правильно, но не для 1С, которая, похоже, живёт в своём мире, и в такой ситуации отображается мелко и неудобно для работы. Можно, конечно, увеличить масштаб на десктопе для всех приложений, но тогда всё отображается излишне крупно. 

Решение - отвязать масштаб приложения RemoteApp, в данном случае 1С, от масштаба на клиенте и передать заданный масштаб - в данном случае 125% - с терминального сервера. Для этого надо добавить всего один ключ в реестре на терминальном сервере.


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

Архив с готовым файлом можно скачать по ссылке.
Первая часть про настройки масштабирования в приложениях RemoteApps в Windows 2012R2.

9 комментариев :

  1. Спасибо, очень помог. Пришлось перерыть кучу форумов, твоё решение идеальное!

    ОтветитьУдалить
    Ответы
    1. Пожалуйста. Когда есть время - пишу разное полезное, местами разработчиков форточек хочется прибить на месте.

      Удалить
  2. Спасибо большое!

    ОтветитьУдалить
  3. "передать заданный масштаб - в данном случае 125%" - а где задан масштаб 125%? Как его выставить в remotepp приложении?

    ОтветитьУдалить
    Ответы
    1. А зачем его выставлять в приложении? Масштаб выставляется для пользователя, все приложения получают его, в данном случае 125%. Недавно пришлось снова вспомнить всё это. Ещё вопрос в том, что новые приложения, например, 1С8, масштабируются без проблем, а 1С7 - нет, в ней надо включать масштабирование в стиле 8.1 - тогда работает, а таких приложений достаточно.

      Удалить
    2. Спасибо за ответ, но не совсем понимаю, где задается масштаб для пользователя. Если на терминальном сервере для каждого пользователя, то как это сделать?

      Удалить
    3. Поддерживаю вопрос

      Удалить
  4. Масштаб задаётся в настройках персонализации на сервере для пользователя, можно сделать скриптом - на втором входе в систему применится.

    ОтветитьУдалить
  5. На сегодняшний день я бы сначала попробовал без этого ключа, т.е. попробовал бы передать локальный масштаб в удаленный сеанс - очень часто работает довольно неплохо.

    ОтветитьУдалить