An Assembly is a component that defines a .Net or Windows side-by-side assembly. An assembly differs from a standard component by defining additional options that only apply to assemblies. Assemblies are installed just as components, but in addition have the ability to register their files for .Net or Windows side-by-side usage. For more information, see:
This pane contains the following attributes and options.
| Attribute | Description | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Assembly type | Select the type of assembly from the drop-down box. The following choices are available:
Each global assembly must fulfill the following requirements:
Tarma Workshop will produce a number of diagnostic warnings if you build a project that does not conform to these requirements. Do not ignore these warnings; they indicate issues that will cause your installer to fail. |
||||||||||
| Name | Enter the name of the assembly. This name is used to refer to the assembly in conditional expressions and symbolic expressions elsewhere in the project, but is not visible to the user. Each assembly must have a name that is unique within the project. By default, the name of the assembly item in your project is the same as the "strong" name of the assembly that it represents. The format of this strong name depends on the type of assembly and the Windows version; Tarma Workshop generates a name that is representative of the most common implementations. This name contains the following elements (the order may vary):
|
||||||||||
| Manifest file | Displays the name of the installation file that contains the assembly's manifest. To select a different manifest file, click on the ... (browse) button to open the Select Installation File or Folder dialog box that allows you to select a different file. | ||||||||||
| GUID | Enter the GUID (Globally Unique IDentifier) for the assembly. When you create a new assembly, Tarma Workshop automatically generates a new GUID for the assembly. Unless you have a good reason to change this GUID and are aware of the implications, we recommend that you keep the GUID that was generated for you. The assembly GUID must be unique across all Windows software; it is used, among other things, to uniquely identify your assemblies on Windows systems. If the GUID accidentally or intentionally matches the GUID of a different assembly or component (whether yours or someone else's), the information for the two components will get mixed up. The assembly GUID must have the following format: {aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} Each group of characters must consist of uppercase hexadecimal digits, i.e., the characters 0-9 and A-F. |
||||||||||
| Lock GUID | Check this box to protect the GUID field against accidental changes (the field will be made read-only); clear it to allow editing of the GUID field. Because it is very important that the GUID of your assemblies remain unchanged throughout their lifetime, we recommend that you keep this box checked. | ||||||||||
| Generate | Click this button to generate a new GUID and copy it to the GUID field. The GUID is generated by the Windows UuidCreate function and is guaranteed to be globally unique if your computer contains a functioning network card. Note: No network access takes place when the GUID is generated, but the network card's unique identifier is used as part of the new GUID. This is combined with time and date information and a counter, and the result is then securely hashed to make it impossible to reconstruct any of the original information. Note: Assembly GUIDs are not updated by the Project > Generate New GUIDs command. You must manually generate a new GUID for each assembly. |
||||||||||
| Condition | Enter a conditional expression that determines if the assembly will be installed, or leave empty if the assembly must be installed unconditionally. Unless you check the Dynamic option (below), the condition is only evaluated once during the UpdateComponents standard action , to ensure that the assembly will not be accidentally installed or removed during a subsequent run of the same installation package because of changes to the condition. | ||||||||||
| Dynamic | Check this box to re-evaluate the condition during each installer run; clear it to evaluate the condition only once. If this option is checked, the installer re-evaluates the conditon during each UpdateComponents action; with the option cleared, only the first such action evaluates the condition. | ||||||||||
| Platforms... | Click this button to open the Select Installation Platforms dialog box that allows you to select the Windows versions on which the assembly must be installed. This platform selection acts as an additional condition for the assembly. Tarma Installer fully supports platform selection at installation time. In addition, when a Build Configuration is being built Tarma Installer will include or exclude assemblies depending on the overlap between the assembly's Platforms selection and the build configuration's build platforms. A BLD:Q0062 diagnostic message will be issued if an assembly is excluded based on the build platforms. |
||||||||||
| Languages... | Click this button to open the Select Installation Languages dialog box that allows you to select the languages for which the assembly must be installed. This language selection acts as an additional condition for the assembly. Tarma Installer fully supports language selection at installation time. In addition, when a Build Configuration is being built Tarma Installer will include or exclude assemblies depending on the overlap between the assembly's Platforms selection and the build configuration's build platforms. A BLD:Q0063 diagnostic message will be issued if an assembly is excluded based on the build languages. |
||||||||||
| Build condition | Enter a conditional expression that determines if the component will be included in the build, or leave empty if the component must be included in all builds. The build condition is evaluated during the preflight test for each Build Configuration; you can use the Build variables attribute in the Build Configuration pane to control if the component will be included for a particular configuration. If the condition evaluates to false, the component and all the installation objects that are controlled by it are excluded from the build process for the configuration. |
||||||||||
| Packaging | Select the desired packaging option for the files that belong to the component. The packaging option that you select here overrides the packaging option from the build configuration. The following choices are available:
|
||||||||||
| Comment | Free-form text field in which you can enter annotations for the assembly. This field is not used by the installer; it is only intended for your own documentation. | ||||||||||
| Base name | [Read-only] Base name of the assembly as obtained from the assembly manifest, usually in the format Company.Product.Application. | ||||||||||
| Version | [Read-only] The assembly version as obtained from the assembly manifest, usually in the format major.minor.build.revision. | ||||||||||
| Processor | [Read-only] Targeted processor architecture, or * if the assembly is intended for any type of processor. | ||||||||||
| Language | [Read-only] The assembly's language or culture as obtained from the assembly manifest, or empty if the assembly is language or culture-independent. | ||||||||||
| Public key | [Read-only] The public key token that corresponds to the public key of the public/provate key pair that was used to sign the assembly, or all zeroes if the assembly does not have a public key token. | ||||||||||
| Type | [Read-only] The assembly type as obtained from the assembly manifest. This must be win32 for all currently supported assemblies. |