Windows 7 не може вимкнути масштабування DPI / PPI для програми


8

У мене Windows 7 з масштабуванням DPI встановлено на 120 DPI. Це робить деякі проблеми зі старими програмами, такі як відрізаний текст, розмита графіка або занадто великий текст. Я хотів би вимкнути масштабування DPI для цих програм. Я спробував це: application.exe "контекстне меню -> властивості -> сумісність -> Вимкнути масштабування дисплея на високих налаштуваннях DPI".

Цей параметр нічого не змінює. Програма все ще відображається як 120 DPI, а не як 96 DPI. Я також перевіряв це на свіжому, не заплутаному Windows 7 у віртуальній машині - та сама поведінка.

Питання полягає в тому, як змусити одну програму використовувати 96 DPI іншим способом, що працює?

Відповіді:


4

У мене просто була така ж проблема, і якщо вибрати будь-який прапорець, це ніяк не змінило. Це те, що я це виправив:

  1. Перейдіть до «Панель управління \ Зовнішній вигляд та персоналізація \ Дисплей» та натисніть на опцію «Встановити нестандартний розмір тексту (DPI)». Переконайтесь, що прапорець "Використовувати масштабування DPI у стилі Windows XP" НЕ встановлений. Вийдіть, щоб застосувати зміни, якщо потрібно.

  2. Замість того, щоб вибирати параметри сумісності самостійно, запустіть майстра та дозвольте Windows вибрати його для вас. Це можна зробити, клацнувши правою кнопкою миші піктограму програми та вибравши в меню "Виправлення неполадок". Це зафіксувало вирізання дисплея для мене. Текст трохи нечіткий, але з цим я можу жити; Я просто щаслива, що все це бачу. :)


1
на моєму комп’ютері зазначено цей параметр, і я не можу його зняти :(
kokbira

2

Я розумію, що це дуже давнє питання, але я щойно знайшов виправлення. Переключіть тему (Панель управління> Усі елементи панелі керування> Персоналізація) з теми Aero на основну тему, і масштабування дисплея на додаток фактично спрацює.


1

лише здогадка, але, можливо, якщо ви запускаєте додаток у режимі сумісності xp або, можливо, відключаєте налаштування візуальної теми для цього додатка, він ігнорує налаштування DPI?


Усі прапорці (і параметри випадаючого списку) на вкладці "сумісність" не вирішують цього питання. Я вже спробував це на двох машинах.
pawel159

0

Відповідь mastseller (1. відповідь) працює, але багато тексту програми стає нечітким :(. Але тепер прапорець "Використовувати масштабування DPI у стилі Windows XP" працює. Отже, якщо є якась програма, де нечітке в правильному порушенні, ніж невеликий розмір, зробіть це: 1) Шукайте файл запуску програми (.exe, .com) у файловому менеджері, АБО це значок (або якщо програма запущена, ви також можете знайти її в Windows taskmanager). 2) Клацніть правою кнопкою миші та натисніть на властивість. 3) Перейдіть на вкладку Сумісність. 4) Установіть прапорець "Використовувати масштабування DPI у стилі Windows XP". 5) Перезавантажте програму (вона запущена).

Ви маєте справу з усіма нечіткими програмами по черзі, але це працює.


0

Якщо ви виявите, що ваш Disable display scaling on high DPI settingsпрапорець не відображається для 64-бітного додатка, наприклад:

введіть тут опис зображення

це може бути тому, що Microsoft вбудована логіка, щоб заборонити цей параметр для 64-бітних програм. У цьому випадку рекомендую дотримуватися інструкцій на веб-сторінці https://superuser.com/a/1018284/460302 та отримати інструментарій сумісності програм .

У вищезгаданій відповіді користувач Ben N надає широке розуміння логіки та рамки Windows для роботи з "несумісними" програмами. Його процедура дозволяє мені керувати сумісністю за допомогою підпису програми, так що навіть якщо я оновлю програму та номер її версії та / або зміни в записі реєстру, я все ще охоплююсь.

Наприклад, ось мій підпис для Rainmeter 3.3.0.2519:

введіть тут опис зображення

Коли я модернізував Rainmeter, це перестало працювати. Тому я створив новий підпис без номерів версій:

введіть тут опис зображення

..і мій новий 64-бітний випуск Rainmeter відображається належним чином.

Як каже Бен Н , давайте розбимо великі гармати .


0

У мене був лише той самий випуск, і "Варіант три" (див. Нижче) від sevenforums.com допоміг мені. У діалоговому вікні властивостей мені не вдалося встановити необхідні параметри для запуску програми з віддаленого сервера.

Додайте до HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersта / або HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersнове "значення струни".

Змініть ім'я на повний шлях вашої програми (тобто \\server\dir\app.exeабо c:\dir\app.exe) та встановіть "Дані про значення" відповідно до цих параметрів (можливі кілька налаштувань і їх потрібно розділити пробілом):

# Compatibility Mode        Data Value
Windows 95                  WIN95
Windows 98 / Windows Me     WIN98
Windows NT 4.0 (SP 5)       NT4SP5
Windows 2000                WIN2000
Windows XP (SP 2)           WINXPSP2
Windows XP (SP 3)           WINXPSP3
Windows Server 2003 (SP 1)  WINSRV03SP1
Windows Server 2008 (SP 1)  WINSRV08SP1
Windows Vista               VISTARTM
Windows Vista (SP 1)        VISTASP1
Windows Vista (SPk 2)       VISTASP2
Windows 7                   WIN7RTM

#Settings                           Data Value
Run in 256 colors                   256Color
Run in 640 x 480 screen resolution  640x480
Disable visual themes               DISABLETHEMES
Disable desktop composition         DISABLEDWM
Disable display scaling on 
  high DPI settings                 HIGHDPIAWARE
Run this program as Admin           RUNASADMIN

За допомогою цих налаштувань я зміг запустити свою програму так:

Ім'я: \\server\dir\app.exe

Дані про значення: DISABLETHEMES HIGHDPIAWARE RUNASADMIN

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.