Windows 8.1 представила эту нелепую ошибку
, где она автоматически определяет масштабирование DPI для пользователя на основе каждого экрана. Я предлагаю пользователям отключить эту функцию, установив флажок в панели управления «Позвольте мне выбрать один уровень масштабирования для всех дисплеев». Это видео с 1:22 минут показывает, где находится настройка: https://www.youtube.com/watch?v=sE3IUTPy1WAКак определить «один уровень масштабирования для всех дисплеев»?
В любом случае, на мой вопрос, как я могу программным образом определить, включен или выключен этот параметр? Есть ли вызов Win API, который я могу сделать, или параметр реестра, который я могу запросить? Если этот параметр отключен, я хочу, чтобы его можно было обнаружить внутри моего приложения.
Отлично, спасибо. Я буду тестировать – mikew
Er, не должна ли программа использовать вызов api, а не реестр? То есть, если нет апи. –
@ David: Насколько я знаю, API не возвращает значение, выбранное через графический интерфейс. Хотя вы можете вызвать [GetScaleFactorForMonitor] (https://msdn.microsoft.com/en-us/library/windows/desktop/dn302060.aspx) и сравнить значения, нет API, который говорит вам, все ли они одинаковы из-за этого конкретного параметра GUI, или потому, что они были индивидуально настроены на одно и то же значение. – IInspectable