Page 1 of 1
Reinstalling
Posted: Wed Jan 12, 2011 4:58 am
by NickDay
I need to make an installer which, if run a second time, installs the package again, overwriting any files already at the destination.
However I am finding that on second run, the 'destination' dialog displays 'Required Disk Space' as zero, and my files are not installed; only a set of empty directories.
Is there a way I can overcome this, please?
In fact the situation is worse than that -- my installer has a custom dialog allowing selection of the package to install. If any one of the selectable packages is already installed, I cannot reinstall it or any of the others, and the 'Required Disk Space' is shown as zero.
Re: Reinstalling
Posted: Wed Jan 12, 2011 5:51 am
by giaviv
Dear NickDay,
You can do a few things. Do you only want to remove specific files OR your entire installation before reinstalling?
In case you want to remove your entire installation, you could call (Un)Install MSI Setup in your MSIcode. Pass it the REMOVE=ALL action string which orders an uninstallation and in the Product Code field provide the variable $PRODUCTCODE$, which holds the Product Code of your own installer. Does that make sense?
Thanks
Re: Reinstalling
Posted: Mon Jan 17, 2011 5:14 am
by NickDay
Hi Giaviv,
Many thanks for your reply.
I really wanted to install the files 'over' the existing installation, without first uninstalling, if this is possible, so I can be sure that any configuration files added after installation will not be damaged.
Also, my installer has several separate packages which may be optionally installed.
I wish the user to be able to install Package A, and then run the installer again and either install package A again, or install Package B.
I am thinking that with your suggestion, if they wish to run the installer a second time and install Package B, it would force the uninstallation of Package A. What is confusing me is that InstallAware installers can install several different packages, but these appear to all be linked to the same product code. So how can it avoid uninstalling too much?
Also if I install Package A, and then run the installer and select Package B, it has 'Required Disk Space' zero (unless I have first uninstalled Package A).
Otherwise, yes, your reply does make sense. And 'Do you only want to remove specific files' -- yes.
How can I remove only specific files, and how can I tell what is installed already, Package A or Package B, please?
I hope the question makes sense. Do let me know if it is not clear.
Thank you
Nick
Re: Reinstalling
Posted: Mon Jan 17, 2011 10:40 am
by BobSchaefer
It sounds like you really want maintenance mode... Look into that and see if that does what you want.
Re: Reinstalling
Posted: Mon Jan 17, 2011 11:20 am
by NickDay
Thanks Bob,
Really I am getting into this situation because I am trying to avoid maintenance mode (which I did not mention, just to keep my question short).
Anyway, I have sort-of resolved the problem by forcing uninstallation of any existing product when my installer enters, and accepting that we won't be able to install/uninstall e.g. Package A and Package B independently from one installer.
Of course this has revealed a further issue, which I'll post about separately.
Nick