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

Major Upgrade


2 replies to this topic

FPSStephen

FPSStephen
  • Members
  • 5 posts

Posted 05 November 2001 - 18:41

I'm doing a Major Upgrade by using the Upgrade table. The Attributes are 513.  At the end of the installation, the old version is detected and removed. Looking at the directories afterwords shows the removal process also deletes many of the new files just installed.  I believe this is done by RemoveExistingProducts. This StandardAction is placed after InstallFinalize in the Execute Sequence.  

Any idea what causes this?


Ian Blake

Ian Blake
  • Members
  • 483 posts

Posted 06 November 2001 - 10:06

One exe, One component, same guid forever.  If you have been changing the component guid you will get the behaviour you have been experiencing.

Illustratintion
Component A Guid a1
Component B Guid b1

Upgrade Package
Component A Guid a1
Component B Guid b2

Running upgrade
Install step,
 AddComponent A(a1) Count is now 2
 AddComponent B(b2) Count is one
Componetn B(b1) Count is still one
Remove Step
 RemoveComponent A(a1) Count is still 1 do nothing.
 RemoveCompowent B(b1) Count is zero delete files

At the end
Component A(a1) is present.
A referenvce to B(b2) is in the registry but the files that overlapped the  B(b1) have been removed.

I hope this helps you understand what is happening.



templebl

templebl
  • Members
  • 11 posts

Posted 20 November 2001 - 16:43

A simple solution to this problem is to move RemoveExistingProducts up higher in the Sequence. Put it between InstallValidate and InstallInitialize and the old product will completely uninstall before the new product is installed.  

One potential problem with this is that if the new product install fails, then there is no rollback (the old product is already gone).