Windows and UHD 4K Resolution

Another interesting problem/issue that I’ve come across while installing software on my new ASUS ZenBook Pro laptop was that some older 32-bit applications don’t show the images, toolbar icons, etc. correctly. The applications are not “DPI Aware” but for Windows 10, it defaults to applications being “DPI Aware”.

Hence, if you can upgrade to a more modern version of the application(s) then do it but if not, here is a quick way to fix the problem.

(1) Either on the program’s short-cut or the executable, right click and select Properties
(2) Click the Compatibility tab
(3) Click the Change high DPI settings button
(4) Click the checkbox Override high DPI scaling behavior
(5) In the Scaling performed by: dropdown, change it to System
(6) Click Ok and then Ok, to save and close the windows.

Now when you start the application, it should look more normal.

Do you use Java applications on Windows 10 with a high resolution? Oracle has/had some developers that made some really stupid decisions and when I say stupid, I mean so stupid it would make Homer Simpson look like a genius (that kind of stupid).

In Java 6 (from what I can gather), Oracle decided to add the metadata tag to the “java.exe” and “javaw.exe” executables called DPIAware and set it to true. This would be great if they added the code to Java to support it but they only half-ass it. Then when people complained, Oracle added the JVM environment variable “sun.java2d.dpiaware” that you could set to “false” to disable it. For Java 8, Oracle removed the JVM environment variable “sun.java2d.dpiaware” for some unknown reason which meant you were screwed again.

Therefore, if you want your Java applications to be correctly displayed on Windows 10 with high resolution display then you need Java 9 or higher.

Now if you are in a corporate environment where you cannot change the release of Java you are using to Java 9 or higher then follow the instructions above for the “java.exe” and “javaw.exe” executables. More often then not, you can find the “java.exe” and “javaw.exe” executables in the following directory:
C:\Program Files\Java\jre(version#)\bin\

Regards,
Roger Lacroix
Capitalware Inc.

This entry was posted in Java, JMS, Windows.

Comments are closed.