a_j_burgess
Posts: 15
Joined: Tue Oct 18, 2005 12:24 pm

Requirements for detecting old versions

Hi,

There are a number of older versions of my application installed in various sites, whose msi was built using AI 2.2. I have recently upgraded to 3.9, which was not backwards compatible against 2.2 and, as a result had to built the aip from scratch, although using the same file structure, app name, CAs, etc.

I now want to bring all of the old applications up to the current release level. To do this I wanted to take advantage of the upgrade functionality of Windows Installer. My plan was to do the following steps:

1. Build a special release that brings previous releases up to date (all future releases willbe done using remote patches - which I now have working thanks to the AI helpdesk)
2. When the msi runs, it should detect the existence of the previous version
3. If not detected, a message should appear explaining that this special release is not relevant as no previous version exists
4. If detected, it should run a small script to copy certain files to a safe location, uninstall the old version, install the new one, and run another script to move the files back

The initial problem I have is that the previous release is not being detected by the new msi (created from the new 3.9 aip) - moving between versions of thhe 2.2 aip works fine. I need to know what specifically the installer is looking for to detect the previous version. I have looked on the MS site under AppSearch but it is not clear to me. Once I know this, I can modify the new aip accordingly (I guess)

The second issue is where to run the script to move the files away. I assume that this is after AppSearch but before the installation process begins to uninstall. However, I am not sure exactly where.

Finally, what conditions should I use against this script?

Sorry for the multiple questions but I felt that they were all linked enough to feature on the same posting!

Regards,

Anthony
gigi
Posts: 2103
Joined: Tue Apr 11, 2006 9:55 am
Contact: Website

Hi,
The initial problem I have is that the previous release is not being detected by the new msi (created from the new 3.9 aip)
The basic idea for an upgrade to work is that both packages must have different(greater) product version, same UpgradeCode, different ProductCode and same installation type. So you can manually modify the 3.9 AIP to fit with 2.2 AIP. Open the 3.9 AIP file with a text editor and chance the UpgradeCode with the one from 2.2 AIP. Keep the ProductCode since is different from 2.2. Note that you must have the same installation type. The installation type is given by the ALLUSERS property in the AIP file.
The second issue is where to run the script to move the files away
We have a tutorial on this problem in the online documentation, please follow this link:
http://www.advancedinstaller.com/user-g ... le-ca.html

Regards,
Gigi
__________________
Gheorghe Rada
Advanced Installer Team
http://www.advancedinstaller.com
a_j_burgess
Posts: 15
Joined: Tue Oct 18, 2005 12:24 pm

Thanks

Gigi,

Wow. A perfect answer! I usually ask really obscure questions on this site to which I get responses that I don't really understand.

Many thanks for both answers.

Regards,

Anthony

Return to “Common Problems”