Ripristina installazione .MSI sospesa dalla riga di comando


9

Abbiamo installato un programma di installazione Java su un gran numero di macchine e si è bloccato su circa la metà di esse. Ora, le distribuzioni successive non riescono a causa del seguente messaggio:

L'utente "SYSTEM" ha precedentemente avviato un'installazione per il prodotto "Java 7 Update 10". L'utente dovrà eseguire nuovamente l'installazione prima di poter utilizzare quel prodotto. La tua installazione attuale ora continuerà.

Seguito da:

Errore 1704. Un'installazione per Java 7 Update 10 è attualmente sospesa. Per continuare, devi annullare le modifiche apportate da tale installazione. Vuoi annullare tali modifiche?

Se esegui un'installazione interattiva, questo va bene. Basta fare clic su "OK", quindi su "Sì" e si avvia. Ma se si esegue un'installazione da riga di comando, si interrompe. Come possiamo annullare l'installazione sospesa dalla riga di comando?


quindi quando dici "esegui in modo interattivo" intendi eseguire lo script o semplicemente eseguire il normale programma di installazione java?
tony roth,

Bene, ho distribuito uno script eseguito in background per installare Java. Si è bloccato su molte macchine e ha lasciato un'installazione sospesa. Ora, qualsiasi installazione non presidiata che eseguo termina con Errore 1704. Se eseguo l'installazione in modo interattivo (ovvero accedo, faccio doppio clic su .MSI ed eseguo le istruzioni), mi consente di annullare l'installazione sospesa. Come posso annullare l'installazione sospesa dalla riga di comando?
Kasius,

ok questa affermazione "Ho distribuito uno script eseguito in background per installare Java". quindi, quando lo fai, lo stai eseguendo nella parte posteriore come la stessa persona dell'utente "SYSTEM"?
tony roth,

magari provare una disinstallazione silenziosa docs.oracle.com/javase/1.5.0/docs/guide/deployment/…
tony roth

SCCM esegue l'installazione silenziosamente come SISTEMA. Se eseguo l'installazione in modo interattivo, come chiunque, mi consente di annullare l'installazione sospesa.
Kasius,

Risposte:


8

Per quanto ne so, non è possibile annullare un'installazione MSI sospesa dalla riga di comando utilizzando MSIEXEC (non ha parametri per quello).

Ad ogni modo, potresti provare a eseguire il comando seguente:

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

Questa chiave viene creata quando è in corso un'installazione. L'eliminazione dovrebbe consentire di rieseguire nuovamente l'installazione.


aggiungi a / f per forzare l'eliminazione senza dubbio (es .: per gli script)
higuita

3

Se la risposta di Tomas non risolve il problema, è possibile provare l' utilità MsiZap.exe .

In pratica rimuove anche i metadati lasciati dalle installazioni MSI, ma non richiede di scoprire tutte le posizioni in cui sono archiviate le informazioni.

Ad esempio, la cancellazione delle informazioni inProgress:

msizap.exe p

o elimina le informazioni di rollback:

msizap.exe s

msizap.exe ha problemi con le versioni successive di Windows. Non dovrebbe essere usato indiscriminatamente. Ecco uno strumento alternativo (non testato da me).
Stein Åsmul,

0

Ho scoperto che in Windows 10 (x64) puoi provare a eliminare la chiave non in HKLM ma nel ramo del registro utenti corrente HKEY_USERS \ SXX-XX -... \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer \ InProgress

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.