PDA

View Full Version : Product GUID



marknorris
02-04-2003, 07:25 AM
I am struggling with the concept of the Product and Upgrade GUIDs. The IS 4 Express Help File states that the Product GUID should be uniquely generated for each new version of the product. To me, this means that v3.0.1, v3.0.2, v3.0.3 will each have a different Product GUID, but the upgrade GUID will stay the same for all three versions and will only be changed when v4 is released.

However, the update service (which I am evaluating) uses the product code and version to determine what updates will be available. The help file for the update service states that the product GUID does not change between minor releases of your application. To me, this means that v3.0.1, v3.0.2, v3.0.3 will all share the same product GUID.

There is a contradiction here.

So, can someone give me examples of how the product GUID and upgrade GUIDs should be set between new builds (e.g. 3.0.1, 3.0.2, 3.0.3) and major releases (e.g. 4.0.1, 4.0.2, 4.0.3).

Please note that we do not change the second digit (commonly known as the minor version number).

Many thanks

Mark

Chandima
02-04-2003, 06:15 PM
I certainly see why your confused! The interpretation of the Product Code depends on the amount of change your product goes through from version to version. The version number really doesn't define how to change the product code.

The most reliable way of upgrading a product is to use a Major Upgrade. This will totally uninstall the previous version and then install the newer version. This is what happens in the "Upgrade Paths" view of Express. To use an Upgrade Path, your previous version and this version should have different Product Codes.

The next way of upgrading a project is to use a Minor Upgrade. This is a little more complex and a nuisance to get working. However for this tow work both versions should have the same Product Code.

If you want to just update a file or two there is no point doing a Major Upgrade. What you need is a patch. This also requires the same Product Code.

To put things in perspectie, InstallShield Express 3.50 and 3.53 have different Product Codes. So much change went in to 3.53 that we didn't want to risk having 3.50 files or COM information left behind. So we perform a major upgrade.

I hope I didn't confuse you even more :).

valiot
07-04-2003, 08:26 PM
The next way of upgrading a project is to use a Minor Upgrade. This is a little more complex and a nuisance to get working. However for this tow work both versions should have the same Product Code.
If I want to do a minor upgrade, does this mean that the ONLY thing I need to change is the version number?

Chandima
07-07-2003, 07:09 PM
Yes. However keep in mind that a Minor Uprgade can be a nasty thing to implement. Search our KB articles for "REINSTALLMODE". I remember there being a KB that discusses how to make a minor upgrade.