Page 1 of 1

Deinstallation MSI Software

Posted: 20. Oct 2009, 09:13
by UB2009
Hi,

ich würde gerne WinZip von allen Rechnern in der Domäne deinstallieren. Da ich schon einige Deinstallationspakete haben, die alle funktionieren, dachte ich mir dass ich einfach die SET UNINSTALL in die Setup.inf kopieren kann.

Leider funktioniert das nicht. Den richtigen RegKey habe ich, da ich ihn ausführen kann und die Deinstallation beginnen würde.

Was fehlt der inf. noch?

Danke schon mal für Tipps.

Gruß
Udo

Posted: 20. Oct 2009, 09:20
by philipp.kiessler
Denkfehler.
Selbst, wenn das Paket WinZip deinstalliert ist es für Empirum eine Installation (des Pakets).
Es sei denn, du strickst das Paket so, dass es erst installiert wird, ohne etwas zu tun. Und z.B. einen oder zwei Monate später löst du dann die Deinstallation des Pakets aus, welche dann in der Deinstallation von WinZip resultiert.

Ich würde so vorgehen: Paket, das bei seiner Installation WinZip deinstalliert und bei seiner Deinstallation nichts tut. Dann das Paket verteilen (INSTALL UPDATE).
Ein gutes halbes Jahr später dann das Paket deinstallieren, und die Maschinen sind sauber.

Posted: 20. Oct 2009, 09:26
by mniemann
ich habe mir für solche Fälle ein "System Correction"-Paket gebaut, dass ich einmal die Woche installieren lassen. Wenn eine früher manuell verteilte Anwendung auf allen Rechner entfernt werden soll, nehme ich den Deinstallationsaufruf in diese INF auf.

Posted: 20. Oct 2009, 09:44
by UB2009
@Phillip Kessler
Das hat aber bei anderen nicht MSI Programmen funktioniert. Klar ist es im Prinzip eine Installation, die aber nur die Deinstallation aufruft. Also das geht ohne Problem.

@mniemann
Wie sieht denn so ein "System Correction" Correction Paket aus bzw. die INF?

Posted: 20. Oct 2009, 10:18
by philipp.kiessler
Wie so ein "System Correction"-Paket aussieht, ist schwer zu sagen. Das hängt sehr davon ab, was du so damit machst. Bei uns gibt's das auch. Heißt "Software Maintenance".

Im Prinzip ist es ein "ganz normales" Paket. Unter "Product" findet sich eine Liste der "Jobs", die das Paket abzuarbeiten hat. Zum Beispiel:

Code: Select all

; Der ganz normale Kopf einer Inf-Datei
[Product]
#Set:UnInstallWinZip
#Set:ChangeRegKeyForXYZ

[Set:UnInstallWinZip]
; Check if WinZip is installed. If so, uninstall!
If DoesRegKeyExist("%HKLM...") Then "Set:UnInstallWinZip_Do" EndIf

[Set:UnInstallWinZip_Do]
Call msiexec...

[Set:ChangeRegKeyForXYZ]
; XYZ needs to have value of "a", but JankeeDoodle-Setup leaves it with value "b".
; So if it's "b" we need to change the value
If %HKLM,"...XYZ"% == "b" Then "Reg:ChangeRegKeyForXYZ_Do" EndIf

[Reg:ChangeRegKeyForXYZ_Do]
HKLM,"...XYZ",...
Einfach mal so als dahingeschmissenes Beispiel.

Bei mir trägt das Paket die Versionsnummer 1.0 und ich zähle die Revision hoch, wann immer ein neuer Job dazu kommt. Natürlich kann man auch mit einer Reinstallation mittels Scheduler arbeiten.

Posted: 20. Oct 2009, 14:14
by TomB
Moin,
die automatische Deinstallation ist mit diesem Tool ja nicht so ganz trivial. Aber das ist ein anderes Thema. :)

Zunächst einmal ein paar Fragen.
Wie ist Winzip denn auf die Rechner gekommen?
Haben sich die Anwender das Paket installiert?
Ist es auf allen Rechnern drauf?
Ist auf allen Rechnern dieselbe Version von Winzip installiert?

Zu Empirum habe ich die Frage: Gibt es eine Möglichkeit ein Paket nachdem es installiert ist, als "nicht installiert" zu markieren?

Abhängig von diesen Gegenbeheiten würde ich das Paket zur Deinstallation von Winzip folgendermaßen aufbauen:

Auslesen des Uninstallkeys in eine Variable,
entweder von Empirum
[font=Courier New]%MachineKeyName%\\Setup\\Uninstallstring [/font]
oder anderweitig installiert
[font=Courier New]HKLM\\Software\Microsoft\\Windows\\CurrentVersion\\Uninstall\\%WINZIPNAME%\\Uninstallstring[/font]
und per Call %Variable% ausführen des Keys.
Wobei %WINZIPNAME% entsprechend dem installierten Winzip gesetzt sein muss bzw. %MachineKeyName% ebenfalls entsprechend.

Das Paket würde ich ganz normal ausrollen und im Installationsmodus laufen lassen. Quasi die Installation des Paketes deinstalliert das Winzip. Im Configurator kann ich dann sehen auf wie vielen Maschinen Winzip bereits deinstalliert ist. Sollte es nach einiger Zeit eine erneute Ausführung erforderlich sein gibt es ja Standardbordmittel dafür.

Re: Deinstallation MSI Software

Posted: 16. Dec 2010, 19:13
by Fynn
Wollte bei mir auch mal 7Zip http://www.freewarenetz.de/7-zip.html deinstallieren und hatte die gleichen Probleme. Hat eine ganze Weile gedauert, bis es geklappt hat.