This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- How to detect if it’s First install, Uninstall repair etc. ?
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Dec 25, 2014
03:06 PM
How to detect if it’s First install, Uninstall repair etc. ?
How to detect if it’s First install, Uninstall repair etc.
Hi
How to detect if it’s First install, Uninstall repair etc. ?
I’m aware of the Installed, REMOVE, REINSTALL properties but still it’s not clear how to detect the exact way action is done, For example:
First install can be done with Full UI or in silent mode,
Repair can be done under “Programs and Features” and click Repair or Click Change and then choose repair or even run same setup again enter maintenance mode and then choose repair.
Uninstall is same as the above.
So how can I know in what way Modify or Repair are done ?
Also if I have CA that run on Uninstall I guess it should be in UI and exe sequence so how can I make sure they don’t run twice ?
Thanks.
Hi
How to detect if it’s First install, Uninstall repair etc. ?
I’m aware of the Installed, REMOVE, REINSTALL properties but still it’s not clear how to detect the exact way action is done, For example:
First install can be done with Full UI or in silent mode,
Repair can be done under “Programs and Features” and click Repair or Click Change and then choose repair or even run same setup again enter maintenance mode and then choose repair.
Uninstall is same as the above.
So how can I know in what way Modify or Repair are done ?
Also if I have CA that run on Uninstall I guess it should be in UI and exe sequence so how can I make sure they don’t run twice ?
Thanks.
(1) Reply
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Dec 29, 2014
06:36 AM
For any UI level the first install is a simple condition to write:
I am not certain how to distinguish from Maintenance mode and Repair mode. I looked at combinations of REPAIR and REPAIRMODE and ADDLOCAL but could not come up with something definitive. I could swear there is some sort of Msi property reference that can help with this but I could not find that reference quickly on MSDN. If you are concerned about a particular feature in maintenance mode then you could specify
For uninstall items you should only have to schedule the action in the execute sequence unless it has to affect your UI experience for some reason. If this is the case when you create the custom action you can specify that it should only run once.
The property that I use to check for uninstall is:
The tilde operator is used to specify that the check should be case-insensitive.
I will put in a plug for Robert D.'s excellent article for MSI tips: http://www.robertdickau.com/msi_tips.html#obf
Here is another link that may help depending on your requirements. http://wyrdfish.wordpress.com/2012/07/20/msi-writing-guidelines-this-may-be-out-of-date/. Read down in this document as it has an excellent list of checking components and features states.
- Not Installed
I am not certain how to distinguish from Maintenance mode and Repair mode. I looked at combinations of REPAIR and REPAIRMODE and ADDLOCAL but could not come up with something definitive. I could swear there is some sort of Msi
- Installed AND !F < 3 and &F >=3 where F=
For uninstall items you should only have to schedule the action in the execute sequence unless it has to affect your UI experience for some reason. If this is the case when you create the custom action you can specify that it should only run once.
The property that I use to check for uninstall is:
- REMOVE ~= "ALL"
The tilde operator is used to specify that the check should be case-insensitive.
I will put in a plug for Robert D.'s excellent article for MSI tips: http://www.robertdickau.com/msi_tips.html#obf
Here is another link that may help depending on your requirements. http://wyrdfish.wordpress.com/2012/07/20/msi-writing-guidelines-this-may-be-out-of-date/. Read down in this document as it has an excellent list of checking components and features states.