Setting New Assembly Properties

InstallShield 11 Universal

Available in InstallShield Universal Premier Only

After a reference to a new assembly or RPM assembly has been added to a Universal Installer or RPM Installer project, set its properties as described below. An assembly is considered "new" if it is not located in any of your Assembly Gallery locations.

Property Description
UUID Specify the Universally Unique Identifier (UUID) for this assembly. It must match the UUID property set in the Key properties for the root product in the assembly project's Installation Design view. This value, along with the Version property, will be used to create the directory structure for the assembly when it is built. The assembly's directory structure will be as follows:

<Universal home>/assemblygallery/<UUID>/<Version>/assembly.dat
Version These values comprise the version of this assembly. Click the ellipsis ("...") and set the following properties. These values must match the Key properties set for the root product in the referenced assembly project's Installation Design view.
  • Major—Type the official release number of the assembly. For example, the Major property of the first release of an assembly would be 1.
  • Minor—If the assembly you are including in this project is an update to the original assembly, then type the number that represents that update. For example, the Minor property of the first update to an assembly would be 1. If this is the first release of the assembly, then this property should be 0.
  • Maintenance—If the assembly you are including in this project is a patch to the current version of the assembly, then type the number that represents that patch. If this is the first release of the assembly, then this property should be 0.
  • Update—This property is used to further define the Version of the assembly; its use is developer-defined.
  • Formatted—This property is not used by InstallShield Universal. It is strictly for your use. For example, you could set it to represent the release date or date of the last update/patch to this assembly.
Versions of assemblies with the same UUID are backward compatible. For example, let's say that a product specifies that it requires version 1.0 of an assembly. When the product is installed, version 1.2 of an assembly with the same UUID is found to already be installed on the target machine. The product will consider the assembly to already be installed and will reference version 1.2.
Name Type the name of the assembly as it is specified in the assembly project as the root product's Display Name property (in the Installation Design view).
Location By the time the product that will be built by this project is installed, this assembly may have already been installed on the target machine by another Universal Installer, RPM Installer, or Dynamic Suite project. The Location properties are where you expect the assembly to be located and where/if to install it if it is not found.

Note

Universal does not support multiple side-by-side installs of a single assembly within a single product or suite. It is an error condition at both build and run times for a single product or Dynamic Suite to require a specific assembly in more than one location on the target system. For more information, see Collaboration/Side-by-Side Assemblies (also known as "multi-instance assemblies").

Click the ellipsis ("...") and the Assembly Install Location dialog box opens. Set its properties as described below. Example scenarios and how these properties should be set for them are provided in Assembly Scenarios.
  • Install Location—If Assembly is Global below is checked, that indicates that this product can use any installed instance of this assembly on the target machine. If this assembly is not installed anywhere, then it will be installed to the Install Location specified here.

    If Assembly is Global is not checked, and this assembly is not installed at the location specified here, then the assembly will be installed here.

    In both of these examples, the Source property must have all build configurations selected in order to include this assembly in some/all builds of this product and to be able to install the assembly.

    A string resolver can be used for this property, for example, $D(install)/employee_database. If a relative path is specified, then the location will be relative to the Install Location of the product that is installing this assembly.
  • Assembly is Global
    • If checked, the installer looks in the VPD for any installation of this assembly. If it is found anywhere, then the product references that instance of the assembly. If it is not found anywhere, then the assembly is installed on the target machine to the Install Location specified above. Check this property if this product can use any installed instance of the referenced assembly.

      Note

      RPM assemblies are always global. This property is checked and disabled for all referenced RPM assemblies.

    • If not checked, the installer looks for the assembly only in the Install Location specified above. If it is not found in this location, then the assembly is installed to the Install Location specified above. Leave this property unchecked if this product requires that the referenced assembly be in the location specified in the Install Location specified above.
The following examples further clarify these property settings (also see Assembly Scenarios):
  • If Assembly is Global is checked, and the assembly is installed anywhere on the target machine, then the product does not install the assembly.
  • If Assembly is Global is not checked, and the assembly is already installed in the location specified by the Install Location field, then the product does not install the assembly.
  • If Assembly is Global is not checked, and the assembly is already installed on the target machine to a location other than the one specified in the Install Location field, then the product installs the assembly to the location specified in the Install Location field.
If the product should install the assembly, then the value of the Install Location field determines where the assembly will be installed:
  • If the Install Location field is not blank, then the assembly is installed to that location.
  • If the Install Location field is blank, the assembly is installed to the location defined in the assembly project—the assembly's root product's Install Location property.
Source This property contains the location of the referenced assembly. It also enables you to select with which build configuration(s) this assembly should be referenced when you build this project. This property works in conjunction with the Product Build Configuration/Include Assemblies property (in the Releases view) to enable you to, for example, install an add-on to an existing installation.

Click the ellipsis ("..."), and the Include Assemblies dialog box opens. Set its properties as described below.
  • Assembly Source Location—Type or browse to the location where the assembly will be located at build time (one of your Assembly Gallery locations) or found on the target machine at run time.
  • Select the build configuration in which you want to include this assembly—This is the property by which you specify which build configuration(s), if any, should include a reference to this assembly.
    • "All build configurations"—If selected, a reference to this assembly will be included when you build this project using any of the Product Build Configurations in the Releases view. Select this option if every build of this project will need to reference/install this assembly.
    • "Specific build configuration"—If selected, the list of Product Build Configurations becomes selectable. Click the check box next to each Product Build Configuration within which you want a reference to this assembly. If you never want a reference to the assembly to be included in the build of this project, then select this option and do not select any of the build configurations in the list.

See Also