Files Action Properties

InstallShield 11 Universal

Set the following groups of properties for the Files action as described below:

Note

The properties described below are unique to this action. The properties that are common to all actions are described in Common Action Properties.

Standard Properties

Property Description
Replace Type This property only applies if a file that is being installed already exists on the target machine or is being installed by more than one component and/or assembly. If so, then this property controls how the install engine compares the file being installed either to the current file or the duplicate file being installed. Whether the file is actually replaced is ultimately based on the value of the Replace Option property of the parent component of this Files action.

Select one of the following:
  • "Replace by Date"—Compares the two files by only checking the "last modified" date of each file.
  • "Replace by Version"—Compares the two files using platform-specific file version information, if applicable (if platform-specific version checking is enabled on the target machine), or if this is a JAR file (if JAR versioning is enabled on the target machine). If Use JAR Version (next property) is "True" and this is a JAR file, then it uses the JAR Version to determine which is newer using Sun's specifications for the implementation-version setting in the manifest (this information is available at the Sun Web site at http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/version_format.html. If it cannot obtain version information for either the file being installed or the file currently on the target machine, then both files are presumed to be the same.
  • "Replace by Version then Date"—Compares the two files using version information as described above in "Replace by Version." If it cannot obtain version information for either of the files, then it compares the files by the "last modified" date information of each file.
Use JAR Version Set this property to "True" if this Files action includes a JAR file(s) that makes use of version numbers. Otherwise, set it to "False." If set to "True," then the builder checks each specified file to determine if it is a JAR file. If so, it loads the JAR's manifest and looks for its "Implementation-Version" property. At run time, it compares the JAR version of the file being installed to the JAR version of the file currently on the target machine to determine which one is newer. It then ultimately decides whether to replace the JAR file based on the value of the Replace Option property of the parent component of this Files action.

Note

This function only works if the project is run with a Java 2 JVM. If it runs with a 1.1 JVM, then this JAR version checking is skipped. Additionally, in order to use JAR version checking, Universal must run using a Java 2 JVM.

Log to VPD This property determines whether the files that will be installed with this action will be logged to the Vital Products Data (VPD) registry on the target machine. If set to "True," the information about the files will be logged to the Software_Object_File_Table of the VPD as common files so that if any other installer tries to install the same files, they will not be installed twice. An entry in the VPD is made for each product that requires the files, indicating that they are shared/common. During uninstallation, the files are not uninstalled until there is only one entry for them in the VPD, which indicates that they are no longer commonly shared. The files are uninstalled along with the last product that required them.

Advanced Properties

Property Description
Owner The User ID that should own these files. This optional property only applies to UNIX and Windows NT target systems.
Group The Group ID that should own these files. This optional property only applies to UNIX and Windows NT target systems.
Install Location This is the location to which to install these files if different from the install location of the parent component of this Files action. This can be an absolute path. If a relative path is specified, then the path entered here will be created relative to the Install Location of the parent component.

Note

If the Install Location property of the parent component is not set, then the Files action inherits the Install Location of the parent feature of the component. If the Install Location of the feature is not set, then the Install Location of the parent product (or feature if it is a nested feature) is inherited.

Stored As Specify how the files included in this action should be stored at build time. Select one of the following values:
  • "Archive Resources"—The files are built internal to the archive, which results in the end user not having the capability to see the files if they browse your distribution media. The Resource Location and Resource ID properties are ignored.

    Warning

    For assemblies, the Stored As property must be set to this value.

  • "External Resources"—The files are built to an external directory specified with the Resource Location property (described below). Additionally, the Resource ID property (also described below) must be specified, which is the disk onto which the files should be written. The end result is that the files will be located in the specified subdirectory on the distribution media after the project has been built. The end user will have the capability to browse the distribution media and access these files directly.
Resource Location Specify the subdirectory to which the file(s) should be written at build time, relative to the Output Directory and External Resource Location properties of the Build Configuration (in the Releases view). This subdirectory is created under the specified disk<Resource ID> property directory, for example, disk1 (described below), and the files are placed in that subdirectory during the build. This property is ignored if the Stored As property is set to "Archive Resources."

For example, if the preview of your files is as follows:
"data/config.txt"
"data/fileset1/readme.txt"
"data/fileset1/eula.html"
"data/fileset2/abc.txt"
and you have set the following properties as follows:
Stored As—"External Resources"
External Resource Location—"myfiles/extras"
External Resource Media ID—"1"
then, after building your project, your disk1 directory would contain the following:
"disk1/myfiles/extras/data/config.txt"
"disk1/myfiles/extras/data/fileset1/readme.txt"
"disk1/myfiles/extras/data/fileset1/eula.html"
"disk1/myfiles/extras/data/fileset2/abc.txt"
If the build configuration Output Directory property is set to "default", then these files would be located under the default directory, as follows:
default/disk1/myfiles/extras/data/config.txt
default/disk1/myfiles/extras/data/fileset1/readme.txt
default/disk1/myfiles/extras/data/fileset1/eula.html
default/disk1/myfiles/extras/data/fileset2/abc.txt
And, if the build configuration External Resource Location property is set to product/data, then the build directories would be as follows:
default/disk1/product/data/myfiles/extras/data/config.txt
default/disk1/product/data/myfiles/extras/data/fileset1/readme.txt
default/disk1/product/data/myfiles/extras/data/fileset1/eula.html
default/disk1/product/data/myfiles/extras/data/fileset2/abc.txt
Note

The External Resource Location properties are optional for both the Files action and build configuration. Either or both can be omitted, and the resulting directory would be in the value set for the build configuration Output Directory property, relative to the build directory.

For example, using the example immediately abovei, not defining the build configuration External Resource Location property would result in the following build directories:

default/disk1/myfiles/extras/data/config.txt
default/disk1/myfiles/extras/data/fileset1/readme.txt
default/disk1/myfiles/extras/data/fileset1/eula.html
default/disk1/myfiles/extras/data/fileset2/abc.txt
Resource ID Specify the one-based number of the disk onto which to store the external files. This property is ignored if the Stored As property is set to "Archive Resources."

AIX Property (Premier Only)

Property Description
VOLATILE Indicates that the files that will be installed onto the AIX platform have volatile size. A file is considered to have volatile size if its size will change during and/or after installation of the product, such as with a user-configurable file.

Windows Property

Property Description
Version Checking Enabled Set this property to "True" if the files will be installed on Windows platforms, and you want the installation to check the Windows file "version" information when the comparison is performed of a file being installed that already exists on the target machine. This is not the same as the Key/UUID/Version information set for each product bean—this is the file version information that is set and maintained by the Windows OS for executable files such as EXE, DLL, OCX, SYS, SCR, DRV, etc.

Windows version information is typically set by the Windows executable developer. The cases that are accounted for when the files are compared by this property are as follows:
  • If neither file has Windows version information, then the Windows version comparison is skipped. In this case, either the JAR version checking or last modified date check is performed.
  • If one file has Windows version information and the other file does not, then the file with the version information is always considered more recent.
  • If both files have Windows version information, then the installation checks the version information of each file to determine which one is newer.

See Also