Экран с высоким разрешением и Windows: как заставить программы вести себя как на экранах с низким разрешением?

11

Я использую Windows 10 на экране ноутбука с высоким разрешением. Некоторые программы поддерживают экран высокого разрешения и выглядят резкими. Некоторые из них не выглядят и выглядят расплывчатыми, но все равно выглядят правильными. Я доволен обоими.

Но есть и те программы, которые имеют лишь небольшую поддержку высокой настройки DPI: они либо выглядят крошечными, либо некоторые элементы окна крошечными, а другие имеют нормальный размер. Это делает некоторые из этих программ непригодными для использования, другие очень неприятными для использования.

Есть ли способ попросить Windows обмануть эти программы, думая, что они работают на экране с низким разрешением, и затем пропорционально увеличить их ? Я бы предпочел, чтобы все элементы окна отображались с правильным размером, даже если это означает, что они станут размытыми.

Чтобы избежать путаницы: мне известно о параметре совместимости «Отключить масштабирование экрана при настройках высокого разрешения» в свойствах приложения, но это не то, что мне нужно. Я прошу об обратном: включите размытое масштабирование и заставьте приложение поверить, что оно работает на экране с низким разрешением.

Сабольч
источник

Ответы:

11

Давайте разберемся с большими пушками.

Загрузите и установите набор средств для обеспечения совместимости приложений . Это включает в себя программу под названием «Администратор совместимости», которая поставляется в двух версиях: 32-разрядной и 64-разрядной. Запустите приложение с той же разрядностью, что и у приложения, которое вы хотите взломать.

Предыстория : многие приложения утверждают, что поддерживают определенную функцию, но затем портят реализацию. Microsoft постоянно занимается этим, и они создали инфраструктуру совместимости, чтобы повторно использовать исправления для распространенных проблем. Эти исправления реализованы в виде прокладок, перехватывающих вызовы Windows API. Мы будем использовать прокладку, которая эффективно отменяет декларацию приложения о осведомленности о DPI. Другие прокладки делают более причудливые / настраиваемые вещи (см. CorrectFilePaths), В то время как некоторые просто лгут приложению о его среде (например ForceAdminAccess).

В нижней части левой панели администратора совместимости вы увидите новую запись в пользовательских базах данных. Щелкните правой кнопкой мыши и выберите « Создать» → « Режим совместимости» . Назовите это как-нибудь (я использовал DpiMisbehavior). В левом списке найдите DPIUnawareи нажмите >кнопку, чтобы включить его. Нажмите OK, как только вы это сделали.

создание режима Compat

Снова щелкните правой кнопкой мыши на пользовательской базе данных и выберите « Создать» → « Исправление приложения» . Укажите название программы и поставщика (это не имеет большого значения) и выберите основной EXE-файл приложения. (Именно здесь важна разрядность администратора совместимости.) После этого нажмите Далее.

создавая исправление

В разделе Дополнительные режимы совместимости прокрутите вниз и найдите режим совместимости, который вы создали недавно. Проверьте свою коробку. Сделайте тестовый прогон, если хотите, затем нажмите Next.

применяя исправление

Теперь, строго говоря, вам не нужно было создавать режим совместимости, потому что вы можете применить определенные исправления здесь. Я попросил вас сделать это на тот случай, если позже вам понадобится добавить дополнительные исправления в этот режим, чтобы они применялись ко всем приложениям, которые вы включили в этот режим. Таким образом, вы можете просто нажать «Далее», ничего не делая на шаге « Исправления совместимости» .

никаких дополнительных исправлений не требуется

Соответствующая информация используется для определения того, какое приложение представляет программа (EXE). (Было бы весьма прискорбно, если бы исправления были применены к программам, которые в них не нуждаются.) Все проверенные записи должны совпадать, чтобы программа получила исправление. Администратор совместимости извлек эти значения критериев из EXE-файла, который вы указали ранее. По умолчанию все в порядке, или вы можете изменить их, если вы сильно относитесь к таким вещам. Нажмите Finish, когда будете удовлетворены.

никаких действий не требуется для сопоставления информации

Повторите создание приложения Fix Fix для каждой программы, которая нуждается в этом. Затем нажмите Сохранить на панели инструментов. Дайте ему любое имя, какое захотите; Я использовал DPI Repair. Затем сохраните его в нужной вам файловой системе. Вы можете использовать элемент Открыть панель инструментов и выбрать этот файл, если вам нужно изменить его в будущем.

Наконец, щелкните правой кнопкой мыши вновь созданную пользовательскую базу данных и выберите « Установить» .

успех

О, да.

Если в будущем вам потребуется изменить базу данных совместимости, просто откройте ее, внесите соответствующие изменения, нажмите «Сохранить», а затем переустановите; это просто пойдет по старой версии. Фактически, вы можете скопировать эту базу данных на другой компьютер и использовать Администратор совместимости, чтобы установить ее там без необходимости ее повторного создания.

Дополнительное развлечение : разверните запись Приложения в Системной базе данных, чтобы увидеть список программ, которые Microsoft должна была исправить с помощью этой инфраструктуры. Нажатие на запись программы покажет вам, какие исправления и режимы совместимости были применены. В разделе Исправления совместимости вы можете увидеть полный список исправлений, которые может использовать ваш компьютер.

Бен Н
источник
В Windows 10 я не могу сохранить базу данных, если создаю собственный режим совместимости, но все работает просто отлично, если я только делаю исправления приложений.
Гвен