Uninstall: Add support for custom wizard pages like Setup
Handle the UnInstall process just like the Install/Setup process using Wizardpages, and the accompanying event functions.
This would allow for a more complete handling of uninstalls, especially when removing 3rd party sub-installs.
11 comments
-
AdminDeanna Earley
(Admin, Inno Setup)
commented
@Mahris Why are you asking and making changes that early anyway? You should perform uninstall steps in CurUninstallStepChanged(usUninstall) at the very earliest.
-
Mahris
commented
It should be nice, but I understand that it requires additional work.
Currently, possible workarounds, but any idea is damaged by misplaced uninstall prompt. It should be asked before InitializeUninstall, not after. It should be the first question, allowing me to ask another questions.
For example, my program should stop Web server during uninstall. Of course, I should warn the user about it - and allow to cancel, if user does not wish to stop it now. But this question should be placed after main uninstall prompt, not before.
Currently, I recommend to add a setup directive DisableUninstallPrompt. It should be very simple, and allows to replace this prompt with custom prompt(s). -
Radjesh
commented
Got my vote. I have several files which are installed in the {userdocs} and aren't un-installed when un-installing the app. Would be nice to see if the user could select them if he/she wants to un-install them also. (conditionally)
-
AdminDeanna Earley
(Admin, Inno Setup)
commented
Because no one has written it yet. Simples
-
kasimcev
commented
http://forums.winamp.com/showthread.php?t=276588 - NSIS can do so, why Inoo can't?
-
nschell commented
After some newsgroup prodding, adding extra dialogs in the form of Notebooks and NotebookPages isn't that difficult, and totally within the bounds of the classes provided to us.
However some extra features could be done for customized Uninstallation dialog support, such as adding a directive or some dynamic functionality to disable the uninstall confirmation dialog (since it would be handled in the manually created "pages"). That is the only big thing I can think of. -
nschell commented
Yes of course one could use a simple MsgBox, but having the full range of making a custom page like the installer would be much nicer for the uninstaller.
-
AdminDeanna Earley
(Admin, Inno Setup)
commented
You don't need the wizard pages to ask the user things.
You can use a message box in CurUninstallStepChanged(usUninstall)
(Of course, it integrated into a setup page looks nicer :) -
jojo
commented
This would be great. I haven't found a way to ask if certain files should be deleted on uninstall yet. That way, there could be a checkbox so the user could decide to keep settings or delete them, for example.
-
Evgeny
commented
I agree, it would be easier to create more flexible uninstalls.
I think there are also few other issues in uninstaller that makes it less powerful than installer. For example, recently I found that Check in UninstallRun is performed during installation rather than during uninstallation. That was rather unexpectable and also allows less flexibility for uninstaller. -
AdminMartijn Laan
(Admin, Inno Setup)
commented
Assuming you mean adding custom wizard pages. The event functions are already like Setup.