Domanda

Come probabilmente molti di voi avranno notato, durante la disinstallazione di un pacchetto MSI Windows richiederà il file .msi originale. Perché?

Riesco a vedere solo degli svantaggi:

  • non resiliente alle modifiche di rete.
  • non resiliente alle modifiche del disco locale.
  • imprevisto dagli utenti.
  • richiede in genere agli utenti di lasciare la propria scrivania e avviare una crociata per ottenere il CD corretto.
  • tipo di prove che le installazioni non sono autonome.
  • promuove l'uso di strumenti non sicuri come msizap.
  • che a sua volta promuove " la prossima volta userò solo un file zip " mentalità.

Qualcuno potrebbe far luce su questo?

È stato utile?

Soluzione

  

Correggi disinstallazione interrotta : puoi provare la più recente strumento di disinstallazione FixIt da Microsoft in caso di problemi con la disinstallazione di un MSI. E un altro link: Disinstallazione un file MSI dalla riga di comando senza utilizzare msiexec (una moltitudine di modi diversi per disinstallare un MSI).


Aggiorna :

Questo nuovo strumento di supporto (questo strumento ora è anche deprecato) può essere provato su versioni recenti di Windows se hai pacchetti MSI defunti che necessitano di disinstallazione (piuttosto che obsoleti, deprecati, non supportati msizap.exe ).

Alcuni hanno suggerito di utilizzare lo strumento collegato qui da saschabeaumont: Disinstalla senza un file MSI . Se lo provi e funziona, assicurati di farcelo sapere. Il feedback in quella risposta indica che funziona (non ho configurazioni bloccate con cui testare al momento).


Perché viene richiesto il supporto di installazione originale? :

  • L'MSI originale non è necessario per la disinstallazione a meno che l'MSI stesso non sia stato progettato in modo errato o l'MSI memorizzato nella cache non sia presente (vedere i dettagli di seguito).
  • Tutti i file MSI installati vengono memorizzati nella cache in % SystemRoot% \ Installer \ *. * utilizzando un nome esadecimale casuale .
  • Il file MSI memorizzato nella cache viene utilizzato per qualsiasi operazione manutenzione , riparazione e disinstallazione - ed è sufficiente per la disinstallazione nella stragrande maggioranza di casi.
  • In alcuni casi questo file memorizzato nella cache può mancare , quindi in alcuni casi la disinstallazione non è affatto possibile ( alcune teorie sul perché ciò possa accadere - errori di progettazione MSI , quarantena antivirus , ripristino del sistema , armeggiare , sistema di sviluppo in uno stato errato dal lavoro di sviluppo , ecc ... ). Ulteriori informazioni di seguito e collegamenti per forzare la disinstallazione o la cancellazione della registrazione del prodotto.
  • La fonte originale è necessaria solo se i file devono essere copiati su disco (per un'installazione di manutenzione), oppure l'MSI invia una richiesta esplicita per risolvere la fonte originale tramite l'azione standard ResolveSource o tramite un'azione personalizzata (che non dovrebbe essere eseguita in un pacchetto creato correttamente - Penso che il pacchetto MS Office contenesse questo errore ResolveSource nel giorno, facendo sì che tutti vadano a cercare i loro CD / DVD di installazione).
  • Nelle precedenti edizioni di Windows questo MSI nella cache era privo di tutti i taxi e quindi conteneva solo la struttura del programma di installazione e nessun file.
  • A partire da Windows 7 ( MSI versione 5 ) i file MSI sono ora memorizzati nella cache a dimensione intera per evitare di interrompere la firma del file che influisce sul prompt UAC all'avvio dell'installazione (a noto problema Vista). Ciò può causare un enorme aumento del consumo di spazio su disco (diversi gigabyte per alcuni sistemi). Controlla questo articolo e soprattutto la discussione in basso per ulteriori informazioni .
  • Per impedire la memorizzazione nella cache di un enorme file MSI, è possibile eseguire una installazione admin del pacchetto prima dell'installazione. Ecco come farebbe un'azienda con una corretta distribuzione in una rete gestita, eliminando i file della cabina e creando un punto di installazione di rete con un piccolo file MSI e file oltre ad esso. Tieni presente che ciò può comportare un prompt UAC in alcuni casi poiché il file MSI estratto non è più firmato - questo deve essere testato con la tua configurazione SOE / desktop .
  • Leggi la mia risposta in questo thread per la descrizione completa delle installazioni di amministrazione: Qual è lo scopo dell'installazione amministrativa avviata utilizzando msiexec / a? o questa risposta simile ma forse più accessibile: installazione dell'amministratore e suoi usi
  • In alcuni rari casi l'MSI memorizzato nella cache (con il nome casuale) può essere erroneamente mancante e la disinstallazione richiederà quindi l'MSI originale per completare la disinstallazione. Ciò non accade spesso. In passato si poteva usare MsiZap.exe per ripulire tale installazione, ma questo strumento è obsoleto , deprecato e non supportato . Non usarlo: ci sono troppe incompatibilità con le versioni più recenti di Windows e si creano nuovi problemi. Forse prova questo strumento di supporto invece (anche deprecato). L'unica opzione che posso suggerire ora è questa risposta da saschabeaumont . Se provi questo strumento, facci sapere se funziona per te u. Se vuoi capire cosa potrebbe aver causato la mancanza dell'MSI nella cache, prova a leggere la sezione 12 qui: La disinstallazione di un file MSI dalla riga di comando senza l'uso di msiexec (in breve potenziale causa l'interferenza con gli script di ripristino del sistema, antivirus e pulizia , a modifiche manuali errate, spazio su disco insufficiente, interruzioni di corrente, errori di debug della casella dello sviluppatore, file MSI mal progettati con codici pacchetto duplicati, patch non riuscite, ecc ... Molte teorie, alcune certezze temo).
  • Come ultima risorsa puoi provare ripristino del sistema (a meno che non sia stato disabilitato in tutto o in parte) per tornare a uno stato di installazione precedente e vedere se questo risolve il problema di disinstallazione (puoi trovare demo video di questo su YouTube o un sito simile).
  • Tieni presente che il ripristino del sistema potrebbe influire su Windows Update che deve quindi essere riapplicato, così come molte altre impostazioni di sistema. Ho riscontrato nuovi problemi di installazione irrisolvibili derivanti da un ripristino del sistema, ma normalmente funziona correttamente. Ovviamente non usare la funzione per divertimento, è l'ultima risorsa ed è utilizzata al meglio per rollback di nuovi driver o configurazioni che sono state appena installate e che risultano immediatamente causa problemi e tali problemi. Più a lungo torni, più rielaborazioni creerai per te stesso. Molta roba evidente, ma immagino che debba essere menzionata.
  • Dal momento che ho citato il ripristino del sistema, suppongo che dovrei menzionare la funzione Ultima configurazione valida nota . Questa funzione non ha nulla a che fare con la disinstallazione o il ripristino del sistema, ma è l'ultima configurazione di avvio che ha funzionato o ha portato a un sistema in esecuzione. Può essere utilizzato per riavviare il sistema se bluescreens o si interrompe durante l'avvio. Ciò accade spesso dopo l'installazione del driver. Questo non farà nulla per correggere la disinstallazione fallita (o sarei molto sorpreso).

Risposta correlata:


Oltre a questa risposta, forse questo articolo su vari modi di disinstallare i pacchetti MSI è di interesse. È un articolo piuttosto popolare con un numero elevato di visualizzazioni :

Altri suggerimenti

Ci sono alcuni motivi per mantenere la msi originale:

  • Il programma di disinstallazione lo utilizza per sapere quali file e chiavi di registro sono stati installati e assicurarsi che siano stati ripuliti.
  • L'MSI può contenere codice per azioni speciali di disinstallazione che devono essere eseguite.
  • Ti consente di eseguire un'operazione di "riparazione" dal menu Installazione applicazioni, indipendentemente dal fatto che tu abbia o meno salvato il file di installazione.

Il modo normale di cose è che Windows mantenga il file nella cache per te, quindi non devi pensarci. Vedi la cartella% WINDIR% \ Installer \. L'unico motivo per cui verrebbe richiesto il msi originale è se qualcosa non va nel file salvato. Questo risolve la maggior parte delle tue preoccupazioni, sebbene ne sollevi una nuova (spazio su disco).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top