UI Mode
Hi Guys,
Is there a property that stores the UI mode? How do I know /qn was specified when executing the MSI?
Is there a way to disable the uninstall? The way I am forcing this for now is displaying calling a function from within an included vbscript and assigning that a value of 3.Is this the recommended way?
Is there a property that stores the UI mode? How do I know /qn was specified when executing the MSI?
Is there a way to disable the uninstall? The way I am forcing this for now is displaying calling a function from within an included vbscript and assigning that a value of 3.Is this the recommended way?
0 Comments
[ + ] Show comments
Answers (5)
Please log in to answer
Posted by:
aogilmor
15 years ago
yes, UILevel is stored in a property
That's not the recommended way to stop product removal, though. Use ARPNOREMOVE
That's not the recommended way to stop product removal, though. Use ARPNOREMOVE
Posted by:
jayteeo
15 years ago
Posted by:
aogilmor
15 years ago
First, properties are case sensitive so it's ARPNOREMOVE
I don't know about msiexec /x, I imagine it would still work. You want to have SOME way of removing the product, right? -- just not have it displayed in control panel for the users.
If you absolutely, positively don't ever want it removed you could probably insert a Custom Action Type 19 with a condition REMOVE="ALL", which would terminate the uninstall. Better make sure it's a good package before you put that in though :-)
I don't know about msiexec /x, I imagine it would still work. You want to have SOME way of removing the product, right? -- just not have it displayed in control panel for the users.
If you absolutely, positively don't ever want it removed you could probably insert a Custom Action Type 19 with a condition REMOVE="ALL", which would terminate the uninstall. Better make sure it's a good package before you put that in though :-)
Posted by:
anonymous_9363
15 years ago
I don't know about msiexec /x, I imagine it would still work.Indeed it would.
Thinking around Owen's solution, you could have some sort of property-driven override so that an uninstall could still take place. For example, you could set up a property 'REALLYUNINSTALL' with a value '0' as default. Then, go with Owen's solution but add another check, this time for REALLYUNINSTALL still being '0'. If it is, then terminate. If it isn't (the property and a non-zero value having been passed on the command line or via a transform), then proceed as normal and uninstall.
Lot of hoops to jump, just to prevent an uninstall, though....do your users have local admin privileges? If they don't, why worry?
Posted by:
jayteeo
15 years ago
The MSI will run on servers. One of the things this MSI performs is the creation of local security groups that are mandatory on all servers. There is no logic to delete these security groups so uninstalling it will not in effect delete these security groups. With the MSI being installed, I thought it would be a good indicator that the server is compliant (or at least was at one time).
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.