9

We deployed a Java installer to a large number of machines, and it froze up on about half of them. Now, subsequent deployments are failing because of the following message:

User 'SYSTEM' has previously initiated an install for product 'Java 7 Update 10'. That user will need to run that install again before they can use that product. Your current install will now continue.

Followed by:

Error 1704. An installation for Java 7 Update 10 is currently suspended. You must undo the changes made by that installation to continue. Do you want to undo those changes?

If you interactively run an install, this is fine. You just click "OK" and then "Yes", and it rolls on. But if you run a command-line install, it halts. How can we cancel the suspended install from the command line?

Kasius
  • 371
  • 1
  • 3
  • 12
  • so when you say "run interactively" do you mean run the script or just run the normal java installer? – tony roth Apr 04 '13 at 15:44
  • Well, I deployed a script that ran in the background to install Java. It locked up on a lot of machines and left a suspended install. Now, any silent installs I run exit with Error 1704. If I run the install interactively (meaning I log in, double-click the .MSI, and run through the prompts), it lets me cancel the suspended install. How can I cancel that suspended install from the command-line? – Kasius Apr 04 '13 at 16:03
  • ok this statement "I deployed a script that ran in the background to install Java." so when you are doing this are you running it in the back ground as the same person as in user "SYSTEM"? – tony roth Apr 04 '13 at 16:20
  • maybe try a silent uninstall http://docs.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/silent.html – tony roth Apr 04 '13 at 16:25
  • SCCM runs the install silently as SYSTEM. If I run the install interactively, as anybody, it allows me to cancel the suspended install. – Kasius Apr 04 '13 at 16:32
  • Related post - [How can I detect an existing "currently suspended" install on the system?](https://stackoverflow.com/q/21638177/465053) – RBT Apr 12 '19 at 09:23

4 Answers4

8

As far as I know, it is not possible to cancel a suspended MSI installation from the command line using MSIEXEC (it has no parameter for that).

Anyhow, you might try running the following command:

REG DELETE HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress

This key is created when there is an installation in progress. Deleting it should allow you to rerun the setup again.

3

If Tomas answer doesn't solve the problem you could try the MsiZap.exe Utility.

It basically also removes the metadata left by MSI installations, but it doesn't require you to find out all the locations where the information is stored.

E.g. deleting the inProgress information:

msizap.exe p

or delete rollback information:

msizap.exe s
weberik
  • 209
  • 1
  • 5
  • [msizap.exe](http://support.microsoft.com/default.aspx?scid=kb;en-us;290301) has issues with later versions of Windows. It should not be used indiscriminately. [Here is an alternate tool](http://support.microsoft.com/default.aspx?scid=kb;en-us;290301) (untested by me). – Stein Åsmul Jul 23 '14 at 16:41
0

We recently had this issue installing an MSI on Windows Server 2016. Removing the file below cancelled the suspended install.

enter image description here

Mark
  • 183
  • 1
  • 7
0

I found out that in Windows 10 (x64) you can try to delete key not in HKLM but in the current user registry branch HKEY_USERS\S-X-X-XX-...\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress

Pro
  • 1