How to execute custom action only in install (not uninstall)

Cyprus106 picture Cyprus106 · Feb 11, 2009 · Viewed 75.3k times · Source

I'm sure this is fairly easy, but I've kind of had a hard time with it. I've got a custom action that executes a different (non-msi) installer on installation. Unfortunately, I've noticed that it also executes the installer on UNinstallation!

I've looked through the options but I cant' seem to find out how to stop this. If anybody could help me I would be incredibly grateful.

Also, how do I set a custom action to go off only during UNinstall? Any help is greatly appreciated guys!

Answer

saschabeaumont picture saschabeaumont · Feb 11, 2009

Add a condition on the action so it's only triggered during installation, not uninstallation.

Action run only during Install

NOT Installed AND NOT PATCH

Action runs during Install and repair

NOT REMOVE

Run on initial installation only:

NOT Installed

Run on initial install or when repair is selected.

NOT Installed OR MaintenanceMode="Modify"

To only run an action during uninstall use the following condition:

REMOVE~="ALL"

To only run an action during upgrade:

Installed AND NOT REMOVE