Java disable dpi-aware not working -


i'm trying run java application -dsun.java2d.dpiaware=false argument nothing happens.

i expect have blurred ui normal size of icons , fonts, seems flag not work.

i'm using jdk 1.8.0_45 on windows 8.1.

i found bug https://bugs.openjdk.java.net/browse/jdk-8080153 don't understand how workaround it.

fix windows, follow these steps:

  • create windows regedit new dword

    1. press windows button + r, type “regedit”, , click ok.
    2. navigate following registry subkey:
      hkey_local_machine > software > microsoft > windows > currentversion > sidebyside
    3. right-click, select new > dword (32 bit) value
    4. type preferexternalmanifest, , press enter.
    5. right-click preferexternalmanifest, , click modify.
    6. enter value data 1 , select decimal.
    7. click ok.
  • create 2 .manifest file (jdk)

    1. go java jdk installation folder , open bin directory
    2. create first file called java.exe.manifest (add code @ end of post).
    3. create second 1 called javaw.exe.manifest (add code @ end of post).
  • create 2 .manifest file (jre)

    1. go java jre installation folder , open bin directory
    2. create first file called java.exe.manifest (add code @ end of post).
    3. create second 1 called javaw.exe.manifest (add code @ end of post).
  • restart java application.

code paste .manifest files

<?xml version="1.0" encoding="utf-8" standalone="yes"?>  <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestversion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">  <dependency>   <dependentassembly>     <assemblyidentity       type="win32"       name="microsoft.windows.common-controls"       version="6.0.0.0" processorarchitecture="*"       publickeytoken="6595b64144ccf1df"       language="*">     </assemblyidentity>   </dependentassembly> </dependency>  <dependency>   <dependentassembly>     <assemblyidentity       type="win32"       name="microsoft.vc90.crt"       version="9.0.21022.8"       processorarchitecture="amd64"       publickeytoken="1fc8b3b9a1e18e3b">     </assemblyidentity>   </dependentassembly> </dependency>  <trustinfo xmlns="urn:schemas-microsoft-com:asm.v3">   <security>     <requestedprivileges>       <requestedexecutionlevel         level="asinvoker"         uiaccess="false"/>     </requestedprivileges>   </security> </trustinfo>  <asmv3:application>   <asmv3:windowssettings xmlns="http://schemas.microsoft.com/smi/2005/windowssettings">     <ms_windowssettings:dpiaware xmlns:ms_windowssettings="http://schemas.microsoft.com/smi/2005/windowssettings">false</ms_windowssettings:dpiaware>   </asmv3:windowssettings> </asmv3:application>  </assembly> 

it works other applications.

if need fix dpi jnlp application launcher, have add following key resources section inside .jnlp file :

<property name="sun.java2d.dpiaware" value="false"/>

after upgrading windows (e.g win10 win10 1607), should apply fix again if doesn't work anymore.

** afer updating java, should copy&paste .manifest files new java's directory.


Comments

Popular posts from this blog

angularjs - ADAL JS Angular- WebAPI add a new role claim to the token -

php - CakePHP HttpSockets send array of paramms -

node.js - Using Node without global install -