Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

RemoveExistingProducts


3 replies to this topic

jsp

jsp
  • Members
  • 96 posts

Posted 13 August 2001 - 15:54

When I make an upgrade, the computer attempt to launch a reboot just after RemoveExistingProducts action. So I can't launch any CustomAction after RemoveExistingProducts.
Is it possible to avoid WindowsInstaller to launch this reboot?
Help!!

Ian Blake

Ian Blake
  • Members
  • 483 posts

Posted 13 August 2001 - 16:26

Something is in the wrong place. Ideally RemoveExistingProducts is the final action of the execute sequence.  

What is your custom action trying to do?

RemoveExisitingProducts uses your execute sequence  from the old version to remove obsoleted components.  So it is your code that is requesting the reboot.


jsp

jsp
  • Members
  • 96 posts

Posted 14 August 2001 - 07:45

Yes. When removing my soft, I launch a ScheduleReboot action, but I have a condition on this action so I want to launch RemoveExistingProducts with a command line to bypass ScheduleReboot for me to be able to launch an action after RemoveExistingProducts.
In fact, in my soft, I have many CA that set manythings and any other CA that are launch only when removing that reset these manythings. So after an upgrade, if I don't put CA after RemoveExistingProducts, my Things are not set anymore!
Any idea?

Ian Blake

Ian Blake
  • Members
  • 483 posts

Posted 14 August 2001 - 10:01

You execute sequeuences should follow this broad schema.

1. Actions default and custom that prepare the installer environment
2. InstallInitialize
3. Actions default and deferred/commit/rollback custom that modify system
4. InstallFinalize
5. RemoveExistingProducts

In this scheme an upgrade install, Installs/Overwrites the new stuff then removes components no longer needed.  This can be a problem when the old install is buggy.

There should not be any action other than RemoveExistingProducts after InstallFinalize.

Ok. I accept you have improper installations out in the field (I did when I started out).

ScheduleReboot only sets a flag.  The reboot prompt is the last action the install engine performs. That is after the new install action and the remove actions have been installed.  So if your custom action is being cut off it is because you have not told the installer to wait for it to complete.  If you set the flags of the CA so the installer waits the CA will complete before the reboot prompt appears.