JDK8 installer exits with 0xC0000005 on Windows 10

4

It happened when I tried to upgrade my JDK from 8u162 to 8u172. I found all the 8u162, 8u171 and 8u172 installers exits with code 0xC0000005, but this happens only with JDK 8. JDK 10.0.1 could be installed successfully.

Here is the dump file analysis by Visual Studio:

Dump Summary
------------
Dump File:  jdk-8u172-windows-x64.exe.10568.dmp : C:\Users\CNife\AppData\Local\CrashDumps\jdk-8u172-windows-x64.exe.10568.dmp
Last Write Time:    2018/4/21 21:54:54
Process Name:   jdk-8u172-windows-x64.exe : C:\Users\CNife\AppData\Local\Temp\jds301015.tmp\jdk-8u172-windows-x64.exe
Process Architecture:   x64
Exception Code: 0xC0000005
Exception Information:  The thread tried to read from or write to a virtual address for which it does not have the appropriate access.
Heap Information:   Not Present

System Information
------------------
OS Version: 10.0.16299
CLR Version(s): 

Modules
-------
Module Name Module Path Module Version
----------- ----------- --------------
jdk-8u172-windows-x64.exe   C:\Users\CNife\AppData\Local\Temp\jds301015.tmp\jdk-8u172-windows-x64.exe   8.0.1720.11
ntdll.dll   C:\Windows\System32\ntdll.dll   10.0.16299.334
kernel32.dll    C:\Windows\System32\kernel32.dll    10.0.16299.15
KERNELBASE.dll  C:\Windows\System32\KERNELBASE.dll  10.0.16299.371
apphelp.dll C:\Windows\System32\apphelp.dll 10.0.16299.98
ole32.dll   C:\Windows\System32\ole32.dll   10.0.16299.371
combase.dll C:\Windows\System32\combase.dll 10.0.16299.15
ucrtbase.dll    C:\Windows\System32\ucrtbase.dll    10.0.16299.248
rpcrt4.dll  C:\Windows\System32\rpcrt4.dll  10.0.16299.371
bcryptPrimitives.dll    C:\Windows\System32\bcryptPrimitives.dll    10.0.16299.98
gdi32.dll   C:\Windows\System32\gdi32.dll   10.0.16299.15
gdi32full.dll   C:\Windows\System32\gdi32full.dll   10.0.16299.98
msvcp_win.dll   C:\Windows\System32\msvcp_win.dll   10.0.16299.248
user32.dll  C:\Windows\System32\user32.dll  10.0.16299.125
win32u.dll  C:\Windows\System32\win32u.dll  10.0.16299.15
sechost.dll C:\Windows\System32\sechost.dll 10.0.16299.15
shell32.dll C:\Windows\System32\shell32.dll 10.0.16299.371
msvcrt.dll  C:\Windows\System32\msvcrt.dll  7.0.16299.125
cfgmgr32.dll    C:\Windows\System32\cfgmgr32.dll    10.0.16299.15
SHCore.dll  C:\Windows\System32\SHCore.dll  10.0.16299.15
windows.storage.dll C:\Windows\System32\windows.storage.dll 10.0.16299.371
advapi32.dll    C:\Windows\System32\advapi32.dll    10.0.16299.371
shlwapi.dll C:\Windows\System32\shlwapi.dll 10.0.16299.15
kernel.appcore.dll  C:\Windows\System32\kernel.appcore.dll  10.0.16299.15
powrprof.dll    C:\Windows\System32\powrprof.dll    10.0.16299.15
profapi.dll C:\Windows\System32\profapi.dll 10.0.16299.15
oleaut32.dll    C:\Windows\System32\oleaut32.dll    10.0.16299.15
crypt32.dll C:\Windows\System32\crypt32.dll 10.0.16299.15
msasn1.dll  C:\Windows\System32\msasn1.dll  10.0.16299.15
version.dll C:\Windows\System32\version.dll 10.0.16299.15
msi.dll C:\Windows\System32\msi.dll 5.0.16299.309
bcrypt.dll  C:\Windows\System32\bcrypt.dll  10.0.16299.125
imm32.dll   C:\Windows\System32\imm32.dll   10.0.16299.15

I am happy to announce that this problem has been solved! Please go down and view my answer for steps. Thanks for your help!

java
windows-10
asked on Super User Apr 21, 2018 by CNife • edited Apr 26, 2018 by CNife

1 Answer

3

I am happy to discover why I couldn't install JDK8 on my Windows 10.

The real reason is that there was a broken JDK8 installation on my Windows. This installation of version 8u152 wasn't totally removed by JDK's installer when upgraded to 8u162. So when I tried to upgrade 8u162 to 8u172, the wrong registry values always lead to failure.

I found the real reason when I tried to install JDK through Visual Studio Installer. No surprisely, it failed with the same code 0xC0000005. Different from JDK installers, Visual Studio Installer left detailed installation log. At the tail of log, I found the following lines:

[2018/04/25 23:19:10.371, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:473 (JavaEnvironment::detect)]
TRACE: Entering JavaEnvironment::detect
[2018/04/25 23:19:10.386, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:490 (JavaEnvironment::detect)]
TRACE: Installed Java detected: version=1.8.0; arch=64; productCode={64A3A4F4-B792-11D6-A78A-00B0D0180152}; type=1
[2018/04/25 23:19:10.386, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:140 (`anonymous-namespace'::detectHomeDir)]
TRACE: Find home dir of {64A3A4F4-B792-11D6-A78A-00B0D0180152} Java installation
[2018/04/25 23:19:10.402, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:154 (`anonymous-namespace'::detectHomeDir)]
WARNING: Unexpected empty value of [InstallLocation] product property of {64A3A4F4-B792-11D6-A78A-00B0D0180152} Java installation. Fall back to heuristic home directory detection.
[2018/04/25 23:19:10.402, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:162 (`anonymous-namespace'::detectHomeDir)]
TRACE: Try home directory from [ProductIcon] product property of {64A3A4F4-B792-11D6-A78A-00B0D0180152} Java installation.
[2018/04/25 23:19:10.419, jdk-8u161-windows-i586.exe (PID: 12756, TID: 12572), JavaEnvironment.cpp:191 (`anonymous-namespace'::detectHomeDir)]
TRACE: Try home directory from [Readme] registry value of {64A3A4F4-B792-11D6-A78A-00B0D0180152} Java installation.
[2018/04/25 23:19:10.455, jdk-8u161-windows-i586.exe (PID: 7320, TID: 13960), FileUtils.cpp:603 (FileUtils::`anonymous-namespace'::deleteFileImpl)]
TRACE: Deleted [C:\Users\CNife\AppData\Local\Temp\jds1029609.tmp\jdk-8u161-windows-i586.exe] file
[2018/04/25 23:19:10.459, jdk-8u161-windows-i586.exe (PID: 7320, TID: 13960), FileUtils.cpp:654 (FileUtils::deleteDirectory)]
TRACE: Deleted [C:\Users\CNife\AppData\Local\Temp\jds1029609.tmp] directory

It shows that I already have a JDK8 installation which I can't find!

So everything is easy, I downloaded an offical tool of Microsoft: Fix problems that block programs from being installed or removed

In the list of uninstalled softwares, "Java 8 Update 152 (64-bit)" was found. Click "next" would remove it totally. Then I double clicked 8u172's installer, it worked!

answered on Super User Apr 25, 2018 by CNife

User contributions licensed under CC BY-SA 3.0