Here's the situation. The maintenance screen has two options and there are 3 scenerios when different things occur:
1. The user runs the original install.exe and the choices are:
- Uninstall
- Repair
2. The user clicks on the Uninstall link in the Program Group
- Uninstall
- Repair (greyed and unselectable because otherwise they will get prompted for the original sources - bad user experience.)
3. The user attempts to uninstall from Add/Remove Program Group
- Uninstall
- Repair (SHOULD BE GREYED)
For #2, I pass in a compiler variable called "UNINSTALL=true" and adjust things accordingly on the maintenance dialog (I grey out the repair option). But for #3, I don't see where in the MSICode I can control what options are passed to the uninstall. Am I missing it? I need to also pass UNINSTALL=true here so that "Repair" is greyed out.
I may be approaching this completely wrong, but this is the way I'm doing it. Gurus, please feel free to educate me if I'm completely off on the way to handle this.
