How to get rid of DPI virtualization?

Windows 10, but decent.
265 993 303
Posts: 3
Joined: 28 Nov 2023, 19:09
OS: Windows NT 3.5 x86
Been thanked: 2 times

How to get rid of DPI virtualization?

Unread post by 265 993 303 »

This is the ONE fatal flaw that prevents me from using Windows 8.1 and up. I have 3840×2160 display, and I mainly use 288dpi in Windows 7.

In DWM in Windows Vista, Windows 7, and Windows 8, there is an option to Use Windows XP style DPI scaling, which sets HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\UseDpiScaling to 0 and ensures all Win32 apps get native resolution just like in all earlier Win32 versions. When UseDpiScaling is set to 1, DWM applies DPI virtualization above 120dpi in apps that lack dpi aware declaration, resulting in an upscaling from 96dpi, which defeats the purpose of very small pixels. This becomes particularly problematic in Windows 8.1 which not only forces DWM, but also UseDpiScaling registry no longer works, and DPI virtualization for more than 120dpi is seemingly always enforced. Even Windows 95 and Windows NT 3.5 have fully functional DPI scaling with native resolution at all pixel densities, so Win32 had over 25 years of dpi-aware history, so there is no excuse for DPI virtualization. It's really driving me crazy since it seems like this should be just one integer comparison branch in DWM that has to be edited and yet it completely ruins the experience.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest