ich bin mir nicht ganz sicher, ob dies hier das richtige Forum ist, da mein Problem eine Kombi aus Script und Basic MSI ist, aber da es hier um die Aufrufbedingung der Aktion geht, denke ich, hier bin ich richtig :-)
Nun zum Problem:
Also, habe ein Setup erstellt, dass sowohl für eine Neuinstallation als auch als ein Major Upgrade für vorherige Versionen gedacht ist. Ich habe ein Upgrade Element hinzugefügt und dieses so eingestellt, dass ein kompletter Remove stattfindet bevor die neue Version installiert wird. Es funktioniert auch alles super. Altes Produkt wird erkannt, entfernt usw.
Das Problem ist eine benutzerdefinierte Aktion. Und zwar rufe ich zum Ende des Setups diese Aktion auf. Es handelt sich dabei um ein Installscript, welches fragt ob es Acrobat Reader installieren soll und es auch tut falls AskYesNo = YES. Als Ausführungsbedingung für diese Aktion habe ich..::|REMOVE<>"ALL" and Not Installed|::.. gesetzt. Ich hatte mir erhofft, dass diese Aktion dann weder beim Updaten noch beim Deinstallieren sondern nur bei der Neuinstallation ausgeführt wird.
Anscheinend ist aber Installed garnicht gesetzt. Er will diese Aktion bei der Ausführung des Major Upgrades auf jeden Fall immer durchführen. Beim Deinstallieren lässt er es wie gewollt bleiben.
Ich habe auch die folgenden Properties schon versucht:
UpdateStarted
ISACTIONPROP1 (vom Upgrade Element angelegt für erkannten ProductCode)
UPGRADINGPRODUCTCODE
Hat jemand noch einen Tip? Was kann ich tun, damit diese Aktion wirklich nur bei der Neuinstallation ausgeführt wird?
Bin für jede Hilfe dankbar!
Grüße
Jan
p.s.: Installshield Developer 8.0 SP1 ist im Einsatz....
Edited by asSiDeluxE!, 17 August 2006 - 16:18.