CC für Inno setupdatei uninstallstring ersetzen

Alle Fragen rund um die ACMP Client Commands
Antworten
svenvolkmann
Beiträge: 1
Registriert: Fr Dez 06, 2013 1:56 pm

Hallo liebes Aagon-Team, liebe User,

Ich habe folgendes Problem, ich installiere 3 Softwaretitel eines Anbieters, die per Inno Setup erstellt wurden. Unglücklicherweise wird die jeweilige unins000.exe immer in die Root des Anbieters geschrieben und das dann analog zur Softwareanzahl mit +1 hochgezählt, also unins000.exe, unins0001.exe usw. Ich dachte es reicht für jeden Softwaretitel einen Unterordner erstellen zu lassen und dann die jeweilige unins... per move single file dort hineinzulegen. Rufe ich aber nun die Deinstallation auf, wird der Deinstallationsprozess aufgerufen und macht nichts. Bei der Kontrolle mit dem Prozessexplorer stellte ich fest, das die unins.. sich auf den uninstallstring in der Registry bezieht und der lautet immer noch %Programfiles%Softwareanbieter\unins00# und nicht %Programfiles%Softwareanbieter\TitelderSoftware\unins000.exe. Eine Änderung in der Registry hat keinen Effekt. Nun weiss ich aus Gesprächen, das ich den Regkey in eine eigens erstellte Variable auslesen kann und die dann als Uninstallstring nutzen könnte. Das wars für mich auch bis dahin, wie kann ich das am Besten realisieren und wo müssen die Änderungen im CC vorgenommen werden? Danke für die Tips
Benutzeravatar
ngottschalk
Beiträge: 293
Registriert: Mi Sep 08, 2010 12:57 pm

Sehr geehrter Herr Volkmann,

sofern Sie ein mit dem Paket Wizard generiertes Paket verwenden wollen, sollten Sie im Clientskript unter dem "Switch (%INSTALLMODE%)" Node die Abschnitte für Installation, Deinstallation, Reparatur etc. sehen (ggf. klappen Sie zu Beginn in der Ansicht zur besseren Übersicht erstmal alle Knoten zusammen).
Hier ist für Sie dann natürlich der "Case (uninstall)" von Interesse, welcher die Routine für einen Deinstallationsaufruf enthält. Hier sollte bereits ein "Shell execute command" bzw. "Befehl ausführen" Command vorhanden sein, welches als Dateinamen %UninstallString% nutzt (wird bei der Erstellung des Paketes angegeben).
Sie müssen hier also im Vorfeld mittels des Commands "Set variable from registry" den gewünschten Wert auslesen und in einer Variablen (hier böte sich %UninstallString% an) abspeichern.
Sollten Sie noch Parameter übergeben wollen, ändern Sie bitte im zuvor erwähnten "Shell execute command" noch den Aufrufstring in ""?!FileName!?" ?!Parameters!?" (erste Option in der Liste) um und tragen Sie die gewünschten Parameter unter "Parameter" noch ein.
Sollten Sie hierzu weitere Fragen haben, stehe ich Ihnen natürlich gerne weiterhin zur Verfügung.
Mit freundlichen Grüßen

Niklas Gottschalk (gottschalk@zoller-usa.com)
IT Systems Administrator
Zoller Inc.
Antworten