Java 7 update 6 installation fails on Windows 7 when Chrome is default browser

12,394

Solution 1

I have now found a workaround for this issue. After factory reset and before installing Java, perform these steps:

  1. Open Google Chrome and accept the terms and conditions, then quit it.
  2. Open Internet Explorer 9. It will ask if you want to use it as default browser. Click "Yes", and then quit.
  3. Open Google Chrome. It will ask if you want to use it as default browser. Say "yes".

You can now download and install Java using the online updater in either browser and it should work correctly.

As for the cause, it appears that the Lenovo factory image uses a non-standard method to set Google Chrome as the default browser. The JavaIC.dll must be reading a registry value that does not exist or similar, leading to it crashing with a buffer overflow (more likely a zero length buffer.)

Solution 2

You did not mention few more drastic measures:

  • Disabling Data Execution Prevention
  • Running in XP compatibility mode

Try googling the 4f2343d6 from your error report, there are other people with the same problem. It was understood as DEP caused.

To disable DEP, click my computer->properties->advanced->performance->settings->performance options->Data execution prevention. Reboot.

Share:
12,394

Related videos on Youtube

ali1234
Author by

ali1234

Updated on September 18, 2022

Comments

  • ali1234
    ali1234 over 1 year

    I am configuring a brand new Lenovo U410 system with Windows 7 Home Premium for a user. I received the system direct from the shop. As part of the configuration I installed Java using the online installer. This worked correctly.

    Later, due to a mistake I made, I needed to restore the system to factory default. The factory default FORMATS C:\ and puts back (supposedly) the exact factory configuration. However, after doing this, I was no longer able to install Java successfully using the same method I used before.

    Now, whenever I attempt to use the online Java installer, the following happens. First of all, a window always appears "Welcome to Java", "Downloading Java Installer...". After short time this window disappears and then one of three things happens:

    1. The very first time I do this after doing a factory reset, I get a Windows error report, which contains this information:

      Application Name: JavaSetup7u5.exe
      Application Version: 7.0.50.6
      Application Timestamp: 4feacd84
      Fault Module Name: JavaIC.dll
      Fault Module Version: 9.9.9.9
      Fault Module Timestamp: 4f2343d6
      Exception Offset: 000052cb
      Exception Code: c0000417
      Exception Data: 00000000
      OS Version: 6.1.7600.2.0.0.768.3
      Locale ID: 1033
      Additional Information 1: 773c
      Additional Information 2: 773cd78cf06816f8246f359fa270f3bb
      Additional Information 3: f51a
      Additional Information 4: f51aaea7d22f36fa9e3a626b5a5cd1c3

      2. Subsequent runs produce either this error message:

      "Error: Java(TM) installer - Downloaded file C:\Users\\AppData\Local\Temp\fx-runtime.exe is corrupt."

      or

    2. Nothing happens at all. I Believe this is a red herring. Running the installer again causes a different error because the files were downloaded and the installer crashed before it could clean up. This isn't the actual problem, as when this happens the installer deletes the downloaded files, and then when you run it for the third time, it downloads everything again and does the javaic.dll crash. I suspect the downloader is appending to the existing files or something, causing the corruption.

    I have tried all of the above as Administrator and as a normal user. I have tried reseting the system to factory defaults several times. I have tried downloading with Chrome and Internet Explorer 9. I have tried uninstalling all anti-virus software and disabling the windows firewall entirely. The only thing which makes a difference is running the installer in Windows XP compatibility mode, which allows the installation to complete.

    I know I can workaround this error by using the offline installer so please don't post that as an answer. I am looking for an explanation of the root cause. Additionally, if I use the offline installer, the updater does not work. The updater also does not work if I install in XP mode. The updater fails because it works by just downloading the newest online setup and running it.

    Also remember that the installers are digitally signed. The signitures verify correctly so there is no way in hell that this is caused by corrupted downloads.

    Some theories I have:

    • The Java setup files on java.com actually changed in between the first successful install and my later attempts. Seems unlikely as none of the version numbers have changed. However, I have seen a couple of reports of this error which showed up in the past 24 hours. This looks like the most likely explanation right now: http://www.oracle.com/us/corporate/press/1735645 - Oracle released 7 update 6 two days ago. Careful inspection of the installers reveal that they are in fact attempting to download .6, not .5 as the download page claims. Not actually correct. Only the update tool tries to install 7u6. The online installer still tries 7u5. However, 7u6 being released two days ago is too much of a coincidence to ignore. Update: The 7u6 online installer is available from Oracle technetwork. It crashes in exactly the same way.

    • The factory reset software uses GMT-8 and I am on GMT-1. As a result, after factory reset, any software which cares to check would think that the system was restored 7 hours in the future, due to Window's awful policy of storing local time in the system clock. This could be confusing a certificate check or similar. Update: I discovered that this does cause Windows Update to fail. The workaround, setting the clock back before starting factory reset, does not enable Java to install correctly.

    • The factory reset image isn't really the same as what is installed in the main partition when you buy the system. Naughty Lenovo.

    • The installer appears to crash while installing or displaying something to do with the Ask.com toolbar. That seems to be what javaic.dll does.

    • Microsoft Tuesday was the 14th. Some update in that could be causing this. However, I'm factory reseting the machine every time, so unless the patches get slipstreamed into the recovery image, or there is some mechanism by which they get silently installed even if updates are disabled, then I don't see how this can be the cause.

    Major breakthrough:

    The default browser on Lenovo systems is Google Chrome. I noticed that the JavaIC.dll "sponsor check" actually does a check on your default browser in order to decide which sponsor ad to display. Normally that would get you the Ask toolbar on IE9. But that toolbar doesn't work on Chrome, and so the installer tries to display a different ad. The different ad is what causes the crash. Changing the default browser to IE9 allows the installer to run correctly. So this looks like a genuine bug in the sponsor ad code in the installer, caused by a combination of Google Chrome default browser and not being in the US. (Installer also checks your location using IP geolocation service and displays different ads based on that.)

    • jenny9
      jenny9 over 11 years
      Does deleting that temp file make any difference?
    • ali1234
      ali1234 over 11 years
      @qweet exactly the same thing.
    • ali1234
      ali1234 over 11 years
      No, deleting temp files does not make any difference and in fact the first stage of the installer does this anyway.
    • Ramhound
      Ramhound over 11 years
      @ali1234 - Just change the timezone bact to the default, install Java, then change it back. Of course fx-runtime.exe is corrupt points to the fact the file you downloaded is actually corrupt.
    • ali1234
      ali1234 over 11 years
      I have tried this. It did not make any difference.
    • Brian
      Brian over 11 years
      Have you tried the offline installer? Another thing to check is to right click on the installer, select properties and at the bottom of the general tab, security section click Unblock if the button is enabled.
    • harrymc
      harrymc over 11 years
      General troubleshooting: You could try to check your system using sfc /scannow from an elevated command prompt.
    • ali1234
      ali1234 over 11 years
      sfc found no errors.
    • harrymc
      harrymc over 11 years
      Have you tried both Java x86 and x64 ? And is your Windows 32 or 64-bit ?
    • ali1234
      ali1234 over 11 years
      Windows is 64 bit. 64 bit Java has no online installer.
  • ali1234
    ali1234 over 11 years
    DEP is set to "Turn on DEP for essential Windows programs and services only" - The other option being "Turn on DEP for all programs and services except those I select". That would sort of explain why I can run fx-runtime.exe manually to install, but the main installer fails because it is using the MSI service (for which DEP is presumably enabled.)
  • ali1234
    ali1234 over 11 years
    Ok, I tried disabling DEP with bcdedit. It did not make any difference.
  • ali1234
    ali1234 over 11 years
    Running in XP SP2 compatibility mode seems to work. However, that isn;t much use if the automatic updater is going to fail every time, as I doubt the owner of this machine will know or care how to manually download the updates and run them in XP mode.
  • Synetech
    Synetech over 11 years
    > Try googling the 4f2343d6 from your error report Why would you Google the timestamp of JavaIC.dll?
  • Admin
    Admin over 11 years
    @Synetech Googling is for troubleshooting things. This dll is exactly the thing causing a problem
  • ali1234
    ali1234 over 11 years
    Googling the timestamp does in fact show up specific reports of this error, so it's not terrible advice. I'd already seen them all of course, but still.
  • Ramhound
    Ramhound over 11 years
    My suggestion would be stop using the Lenovo factory image. I would install a clean Windows 7 installation. Anything you need to install you can get off the Lenovo website.
  • ali1234
    ali1234 over 11 years
    Wiping the Lenovo recovery image voids the warranty.
  • keltor
    keltor over 11 years
    You cannot void the hardware warranty with anything you do to the software, though obviously they are not obligated to provide you with software support at that point. However, I have never experienced any issue of any sort with Lenovo supporting systems with clean Windows 7 installs.
  • mckelvey
    mckelvey over 11 years
    I had same issue with Lenovo G580 laptop. I tried different ways to get around this issue, but couldn't get Java installed. Making IE as default browser solved the issue.