In Windows Vista and Windows 7, it is possible to lie to applications about what the current horizontal and vertical DPI setting is.
Background: The "normal" setting on Windows is 96dpi. Most applications do not handle the user having a preference different from the developer's preference. Starting with with Windows Vista, Microsoft worked around the buggy applications, and decide to lie to them - but scale them up graphically.
So Windows already does have a mechanism to lie to an application about what the current DPI setting is; always returning 96. Windows then using the video card to scale the final composited window up to the appropriate size.
i have an application that thinks it can handle high-dpi mode, but really it cannot. So i want to Windows to lie to this app. But at the same time i use the app all day, typing in screenfuls of text. The scaling applied by the desktop compositer leaves the text fuzzier, and unpleasant to read.
Is it possible to lie to an application about the DPI setting, but not have dpi scaling applied?
- How to force high-dpi scaling? (my question about the inverse case; overriding an app's opt-out of the higih-dpi scaling)