Major Upgrade Item: Advanced Tab

InstallShield 2024 » Upgrades View » Major Upgrade Item

Project: This information applies to the following project types:

Basic MSI
InstallScript MSI
MSI Database
Transform

The Advanced tab exposes more advanced level configurations, in addition to the settings in the Common tab. Click on each setting in the properties grid to configure the following settings.

Advanced Properties for Major Upgrade Items

Property

Description

Upgrade Code

This setting indicates the GUID that uniquely identifies the product family to which this product belongs. The upgrade code should be consistent across different versions and languages of a family of related products so that Windows Installer can use it to search for related versions of the product that are already installed.

If you select the Products sharing my Upgrade Code option on the Common tab for your major upgrade item, InstallShield sets the value of this setting on the Advanced tab to the placeholder value of {00000000-0000-0000-0000-000000000000}. InstallShield uses the appropriate upgrade code value instead of the placeholder value in the .msi package that it generates at build time.

For more information on configuring this setting, see Setting the Upgrade Code.

For more information on how the upgrade code is used in upgrades, see Major Upgrade vs. Minor Upgrade vs. Small Update.

Minimum Version

Enter the minimum product version that this upgrade should update. Version numbers should be in the format aaa.bbb.ccccc, where aaa represents the major version number, bbb represents the minor version number, and ccccc represents the build number. The maximum value for the aaa and bbb portions is 255. The maximum value for ccccc is 65,535.

Note:Only the first three version fields are used when making product version comparisons. Windows Installer is unable to distinguish between product versions that differ only in their fourth field. To learn more, see Specifying the Product Version.

By default, each project includes an ISPreventDowngrade major upgrade item, which enables you to prevent end users from being able to install the current version of your product over a future major version of the same product. For this default major upgrade item, the default entry in the Minimum Version setting is the following placeholder value:

***ALL_VERSIONS***

InstallShield uses the product version of the currently open project instead of the aforementioned placeholder value in the .msi package that it generates at build time. To learn more about the ISPreventDowngrade support, see Preventing the Current Installation from Overwriting a Future Major Version of the Same Product.

Include Minimum Version

This setting is useful when you are specifying upper and lower bounds for a range of product versions that your upgrade supports. To include the minimum version number in the range, select Yes.

Maximum Version

Enter the maximum product version that this upgrade should update. Version numbers should be in the format aaa.bbb.ccccc, where aaa represents the major version number, bbb represents the minor version number, and ccccc represents the build number. The maximum value for the aaa and bbb portions is 255. The maximum value for ccccc is 65,535.

Note:Only the first three version fields are used when making product version comparisons. Windows Installer is unable to distinguish between product versions that differ only in their fourth field. To learn more, see Specifying the Product Version.

If you select the Any earlier version option on the Common tab for your major upgrade item, InstallShield sets the value of this setting on the Advanced tab to the following placeholder value:

***ALL_VERSIONS***

InstallShield uses the product version of the currently open project instead of the placeholder value in the .msi package that it generates at build time.

Include Maximum Version

This setting is useful when you are specifying upper and lower bounds for a range of product versions that your upgrade supports. To include the minimum version number in the range, select Yes.

Language

Specify a comma-separated list of languages that you want the upgrade to target or avoid targeting, and then use the Exclude Specified Languages setting to specify whether you want to exclude the languages that are configured in this setting.

The language identifiers should be specified in decimal format. For example, specify 1033 for English (United States).

Exclude Specified Languages

Specify whether you want the installation to target or avoid targeting the languages that are identified in the Languages setting. Available options are:

No—If the language of the product on the target system matches one of the languages that are specified in the Language setting, and if the other requirements such as the version number are met, the installation performs an upgrade.
Yes—If the language of the product on the target system does not match any of the languages that are specified in the Language setting, and if the other requirements such as the version number are met, the installation performs an upgrade.

Detect Only

Specify whether you want the installation to detect that an upgrade needs to occur without actually performing the upgrade. The default value is No.

If Windows Installer determines that a related product is installed on the target system, it adds the product code of that related product to the property that is specified in the Detect Property setting.

Detect Property

If Windows Installer determines that a related product is installed on the target system, it adds the product code of that related product to the property that you specify in this setting.

You can use the property that you specify in conditional statements to control the flow of the installation or even stop the installation altogether.

Windows Installer sets this property when the FindRelatedProducts action runs in the installation sequences.

Only Remove Specified Features

If you want the installation to remove the entire earlier version of the product from target systems, leave this setting blank.

If you want the installation to remove only some features of the earlier version of the product from target systems instead of removing the entire product, specify a comma-delimited list of the names of the features to be removed. Note that the installation does not remove any features if you specify formatted text that evaluates to an empty string.

Caution:If you specify a value in this setting, the installation will not completely uninstall the earlier version of the product. Therefore, you will be left with two entries in Add or Remove Programs.

Continue On Failure

Specify whether you want to proceed with the installation even if the uninstallation of the earlier version fails. Available options are:

Yes—The installation of the new version occurs, regardless of whether the uninstallation of the earlier version is successful.
No—The installation of the new version occurs only if the uninstallation of the earlier version is successful. This is the default value.

Migrate Feature States

Specify whether you want the installation to detect the feature states of the currently installed product and use these same states when applying the upgrade.

This functionality may be useful if the feature tree in the new version of the product has not changed much from the original.

See Also