How can I run a single Windows application in High DPI mode?

2

1

Windows has a "high DPI" feature which lets users effectively use high DPI displays, in since Windows XP.

However, many applications implemented display scaling incorrectly. In Windows Vista, they added a backwards compatibility feature which scales the application as a bitmap, resulting in blurry controls.

I would like to make my application be high-DPI aware, which means testing in high DPI mode. But switching back and forth (and logging in/out) to check if the scaling code works correctly is annoying.

Is there some way to force my application to run in high DPI mode for testing purposes?

(I am well aware that the answer may be "you can't; sorry." I worded this as a "How..." question because I don't want someone to say "Yes" and say nothing else)

Billy ONeal

Posted 2013-03-09T02:55:55.097

Reputation: 7 021

Question was closed 2013-03-10T13:17:05.850

Possible duplicate of Set DPI of individual applications in Windows, How to force high-dpi scaling? ...

– Karan – 2013-03-10T03:22:00.420

@Karan: Agreed. Also voted to close. – Billy ONeal – 2013-03-10T03:47:00.193

Wait, you work for Microsoft? You should be asking company experts about questions like these or posting on some internal mailing list and giving us useful tips and answers! – Karan – 2013-03-10T03:56:48.127

1@Karan: It doesn't work like that. It's a company of 40,000 developers; there's no magic system that lets one figure out exactly which of the other 39,999 one needs to talk with about a feature. Nor do people in the Windows group treat people outside the Windows group like insiders, even if I knew with whom I should speak. – Billy ONeal – 2013-03-10T04:08:26.563

Ah well, there goes our dream of obtaining answers to some really burning questions about Windows and its oddities! :) Was just hoping there might be a mailing list where you guys can at least post queries and hopefully receive informed answers. – Karan – 2013-03-10T04:20:34.800

@Karan: You're more likely to get answers posting comments in Raymond's suggestion box :) – Billy ONeal – 2013-03-10T04:36:51.753

Yeah, but the 2-3 year wait is a killer! Thankfully he does answer queries on SO, but of course those have to be programming-related.

– Karan – 2013-03-10T04:43:19.797

Answers

-2

Go to Properties for your application's executable file and switch to Compatibility tab and check Disable display scaling on high DPI settings option.

Mxx

Posted 2013-03-09T02:55:55.097

Reputation: 2 659

This disables scaling, but doesn't cause the application to run in high DPI mode. – Billy ONeal – 2013-03-09T06:03:04.300

Why can't you enable high dpi by default and disable it only for problematic apps? (and at the same time submit bug report to app developer to fix that issue) – Mxx – 2013-03-09T06:06:38.947

Because I don't want to run in high DPI mode; it isn't something I have any desire to use. I just want to make sure my app doesn't fail for those users who are using high DPI. – Billy ONeal – 2013-03-10T03:45:49.853

(Also, there isn't a way to disable it for problematic apps; this setting disables display scaling, it doesn't disable high DPI for the app itself) – Billy ONeal – 2013-03-10T03:46:40.677

Ah, well, you didn't mention that you still wanted to run in low-dpi and it was testing for other users. – Mxx – 2013-03-10T08:14:39.410

3I don't see how my question "Is there some way to force my application to run in high DPI mode for testing purposes?" could be interpreted any other way. – Billy ONeal – 2013-03-11T18:50:48.043