Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

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?

share|improve this question
    
so when you say "run interactively" do you mean run the script or just run the normal java installer? –  tony roth Apr 4 '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 4 '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 4 '13 at 16:20
    
maybe try a silent uninstall docs.oracle.com/javase/1.5.0/docs/guide/deployment/… –  tony roth Apr 4 '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 4 '13 at 16:32

2 Answers 2

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.

share|improve this answer
    
add a /f to force the delete without question (ie: for scripts) –  higuita Jul 4 at 16:40

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
share|improve this answer
    
msizap.exe has issues with later versions of Windows. It should not be used indiscriminately. Here is an alternate tool (untested by me). –  Stein Åsmul Jul 23 at 16:41

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.