## Installer - Available Actions |

| Category: Control
Run script
Runs a custom script. The script must return a boolean value. If it returns false, the installation will be canceled.
Applies to: Installation, Uninstallation
Properties:
Optional Rollback Script The script that will be executed in case of a rollback. The return type is void. Script The script that will be executed. The script must return a boolean value. If it returns false, the installation will be canceled.
Set a variable
Sets a variable by running a custom script. The script must return a String.
Applies to: Installation, Uninstallation
Properties:
Fail if value is null If selected, the action will fail if a null value is returned from the script. Only if undefined The variable will only be set if it was previously undefined. This is useful for variables that your user can pass via -V or -varfile at the command line. Script The script that will be executed. The script must return a String. Variable name The name of the variable that will be set. Enter the variable without the installer prefix and the percent signs.
Set messages
Sets the messages in the progress interface.
Applies to: Installation, Uninstallation
Properties:
Detail message The detail message. Status message The status message. Use detail If the detail message should be set. Use status If the status message should be set.
Set the progress bar
Change the value of the progress bar or set it to indeterminate mode.
Applies to: Installation, Uninstallation
Properties:
Percent value The progress value from 0 to 100. This property is only used when a percentage value is set or added. Type of change Change the progress bar either to a percentage value, add progress, set it to indeterminate mode, start a timer, or return from indeterminate mode and show the last percentage value. Timer maximum value The maximum progress value to be set by the timer. This property is only used when the timer is started. Timer period The time in milliseconds for one percent. This property is only used when the timer is started.
Sleep
Sleep a specified number of milliseconds. This is useful to ensure that a progess screen is displayed for at least a certain period of time.
Applies to: Installation, Uninstallation
Properties:
Sleep time The sleep time in milliseconds.

| Category: Desktop integration
Add a desktop link
Create a link on the desktop to an installed executable or file. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Create for all users If the desktop link should be created for all users. If unselected, the link will be created for the current user only. If a "Create program group" screen is present, the "Create shortcuts for all users" check box will override this property. Arguments Optional arguments to the executable for Windows and Unix. Tooltip description An optional description for Windows that will be displayed in the tooltip. Target file The installed file or executable for which a link will be created on the desktop Target is Single Bundle If selected and the media set is a single bundle installer, the desktop icon will point to the bundle instead. Name The name of the desktop icon Icon file An optional different icon (*.ico) for the link on Windows.
Add an executable to the startup folder on Windows
Add an installed executable to the startup folder on Windows so that it will be started automatically when the user logs in. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Create for all users If the startup item should be created for all users. If unselected, the link will be created for the current user only. Startup executable The executable that should be started when the user logs in Entry name The name of the entry in the startup folder
Create a file association
Create an association between a file extension and a launcher, so that the launcher is invoked when the user double-clicks a file with the selected extension. On Windows, if the application has not yet been started, the arguments to the main method will contain the file name. Subsequent invocations and all invocations on Mac OS X can be intercepted with the com.install4j.api.launcher.StartupNotification class. Only effective on Windows and Mac OS X. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Description A description that is presented to the user as the text next to the corresponding checkbox in the "File associations" screen. File extension The file extension for which the file association should be created. Must not include the leading dot. Launcher The launcher that will be invoked when the file association is invoked by the user. Execute on Mac OS X If the file association should be performed on Mac OS X. Icon file for Mac OS X An optional icon file (*.icns) for the file association on Mac OS X. If empty, a default icon will be used. Restart Finder If true the Finder should be restarted at the end of the installation. This might be necessary for the icon (and sometimes the association itself) to be picked up immediately. Note that users might find this restart disruptive. Additionally, it you launch an application at the end of the installation it can be hidden by Finder windows. Selected If the file association is selected in the "File associations" screen. Execute on Windows If the file association should be performed on Windows. Icon file for Windows An optional icon file (*.ico) for the file association on Windows. If empty, a default icon will be used.
Create a quick launch icon
Create a link in the quick launch section of the Windows task bar to an installed executable or file. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Arguments Optional arguments that should be passed to the executable when started with the quick launch link. Description The description that will be displayed in the tool tip Target file The installed file or executable for which a link will be created on the quick launch bar Icon file An optional icon file (*.ico) for the quick launch link. If empty, the default icon will be used.
Create program group
Create standard program group entries on Windows and freedesktop.org compatible UNIX desktops. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Add default launcher links If generated launchers are placed into the program group automatically with their default menu untegration properties. You can rename and move the default menu integrations in the program group entries tree. If you delete them, the default menu integration can be enabled again on the "Executable info->Menu integration" step of the launcher wizard. Add uninstaller If the uninstaller should be added to the program group, too. Create for all users If the program group is created for all users or only for the current user. If a "Create program group" screen is present, the "Create shortcuts for all users" check box will override this property. Application categories The freedesktop.org (KDE, GNOME) application categories used to determine the best place in the applications menu. Multiple categories can be separated with a semicolon. Enabled If the program group creation should be performed by default. Note that if you set this property to false and the "Create program group" screen is not present, the program group will never be created. Directory for links The default value for the directory in which links for all relevant launchers (those with "menu integration" enabled) will be created on UNIX. Program group entries On Windows, the entries in the program group tree will be created in the start menu by the installer. The control buttons allow you to modify the contents of the list of program group entries. You can add new sub-folders and new file links.In the edit dialog, you have to fill in the display name of the program group entry.as wellas the target file for the of the program group link. This has to be a file or directory relative to the distribution root directory. Please note that if you select a directory as the target, it will not "fly out" in the program group, but a separate explorer window will be opened if the user clicks on it. To display all files in a directory, please add all of them as separate program group entries. Optionally, you can specify an icon that is used for this program group entry. The icon file must point to an `*.ico` file. If the file name is relative, it is interpreted as relative to the project file. If you do not specify an icon, the default icon is determined by the system. Program group name The default value for the program group where entries for all relevant launchers (those with "menu integration" enabled) will be created. If the "Create program group" screen is present, the user can change this selection. If you leave this property empty your links will be created at the top level.
Create start menu entry
Create a start menu entry on Windows. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Create for all users If the program group is created for all users or only for the current user. Arguments Optional arguments that should be passed to the executable when started with this entry. Entry name The entry name in the start menu. The name can contain sub-folders with backslashes. Target file The installed file or executable for which a start menu entry will be created Icon file An optional icon file (*.ico) for the entry. If empty, the default icon will be used.
Register Add/Remove item
Register an Add/Remove item in the Windows software registry. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Icon An optional icon file (*.ico). Item name The name of the item that is displayed in the Windows software registry.

| Category: File operations
Add Windows file rights
Adds access rights to a file or directory on Windows.
Applies to: Installation, Uninstallation
Properties:
All All available rights. Execute The right to execute the object. File or Directory The file or directory which rights should be modified. The rights for a directory will be inherited by all subdirectories and included files. Group The group for which the access right should be granted. Read The right to read the object. Write The right to write to the object.
Copy a file
Copy a file. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation, Uninstallation
Properties:
Delay if necessary If selected and the destination file cannot be replaced, the operation will be scheduled for the next reboot. The variable sys.rebootRequired will be set to Boolean.TRUE in this case. Destination file The destination file. Access mode The UNIX access mode. Overwrite mode How to handle an existing destination file. Shared file If the file should be registered as a shared file. Source file The file to be copied. Trigger reboot if required If selected and the operation is delayed until reboot, the user will be asked for a reboot automatically at the end of installation. Uninstall mode The mode how the uninstaller should handle the file created with this action.
Create a symbolic link
Creates a symbolic link. This action has no effect on Windows.
Applies to: Installation, Uninstallation
Properties:
File The file or directory that the symbolic link should point to. Link file The link file that should be created. Remove on uninstall If the link should be deleted by the 'Uninstall files' action in the uninstaller.
Delete a file or directory
Deletes a file or directory. The directory can be deleted recursively.
Applies to: Installation, Uninstallation
Properties:
Backup for rollback If checked a backup of the files to be deleted will be made and restored in case of rollback. File The file to be deleted Recurse into directories If checked and the file is a directory the action will delete all content of this directory.
Install content of a zip file
Installs the content of an external zip file to an arbitrary location. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Delay if necessary If selected and a destination file cannot be replaced, the operation will be scheduled for the next reboot. The variable sys.rebootRequired will be set to Boolean.TRUE in this case. Destination directory The destination directory. Relative directory information in the zip file will be added to this value Dir access mode The UNIX access mode of installed directories. File access mode The UNIX access mode of installed files. Overwrite mode How to handle an existing destination file. Shared file If the file should be registered as a shared file. Show progress If the action should show its progress with the progress bar and the detail message. Trigger reboot if required If selected and an operation is delayed until reboot, the user will be asked for a reboot automatically at the end of installation. Uninstall mode The mode how the uninstaller should handle files created with this action. Zip file The zip file that contains the content to be installed.
Move a file
Moves a file. The newly created file is subject to removal by the 'Uninstall files' action.
Applies to: Installation, Uninstallation
Properties:
Delay if necessary If selected and the destination file cannot be replaced, the operation will be scheduled for the next reboot. The variable sys.rebootRequired will be set to Boolean.TRUE in this case. Destination file The destination file. Access mode The UNIX access mode. Overwrite mode How to handle an existing destination file. Shared file If the file should be registered as a shared file. Source file The file to be moved. Trigger reboot if required If selected and the operation is delayed until reboot, the user will be asked for a reboot automatically at the end of installation. Uninstall mode The mode how the uninstaller should handle the file created with this action.
Set the UNIX access mode of a file
Sets the UNIX access mode of a file. This action has no effect on Windows.
Applies to: Installation, Uninstallation
Properties:
File The file or directory that the access mode should be set for. Mode The mode to be set. This can be any string that can be used with chmod. Recursive If true and file is a directory the operation will be performed recursively.
Set the modification time of a file
Sets the modification time of a file.
Applies to: Installation, Uninstallation
Properties:
File The file or directory that the modification time should be set for. Time The new modification time.
Set the owner of a file
Sets the owner and optionally the group of a file. This action has no effect on Windows.
Applies to: Installation, Uninstallation
Properties:
File The file or directory that the owner should be set for. Owner The owner to be set. If you want to set the group, too, please add it with a colon (example: user:group). Recursive If true and file is a directory the operation will be performed recursively.

| Category: Final options
Create a response file
Create a response file at an arbitrary location to save user input for subsequent installations. This file can be used with the -varfile command line option.
Applies to: Installation, Uninstallation
Properties:
Excluded variables The variable that should be excluded from the response file. If empty all variables will be used. The items in the list must be separated by semicolons. If you click on the edit button in the property editor, you can enter one item per line in a separate dialog. Entries that are installer variables with array values (e.g. String[] or Object[]) are expanded as separate entries, this allows you to build a variable length list of entries at runtime. File The file that the text should be appended to. If it doesn't exist it will be created.
Execute launcher
Execute an installed launcher and return immediately. This action is intended to be placed on the "Finish" screen. A confirmation can be added automatically to the "Finish" screen.
Applies to: Installation
Properties:
Launcher The launcher that will be executed. Service launchers are not shown.
Reboot computer
Reboot the computer on Microsoft Windows. This action will trigger a reboot that takes place at the end of installation or uninstallation. By default, the user will be asked whether to reboot or not.
Applies to: Installation, Uninstallation
Properties:
Ask user Ask the user whether the reboot should be performed or not.
Show URL
Show a URL in the default browser. This action is intended to be placed on the "Finish" or the "Uninstallation success" screen.
Applies to: Installation, Uninstallation
Properties:
URL The URL that will be shown.
Show file
Show a file with the associated application. Usually, a text file or an HTML file is appropriate. This action is intended to be placed on the "Finish" screen. A confirmation can be added automatically to the "Finish" screen.
Applies to: Installation
Properties:
File The file that will be shown.

| Category: Miscellaneous
Add VM options
Adds VM options for a launcher by modifying or creating a *.vmoptions file or by changing the Info.plist file. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Launcher The launcher that the VM options should be added for. VM options The unquoted options that should be added. The items in the list must be separated by semicolons. If you click on the edit button in the property editor, you can enter one item per line in a separate dialog. VM options that are installer variables with array values (e.g. String[] or Object[]) are expanded as separate VM options, this allows you to build a variable length list of VM options at runtime.
Modify an environment variable on Windows
Sets, appends to, or prepends to an environment variable on Windows.
Applies to: Installation, Uninstallation
Properties:
Modification type Modification type User specific If the variable is user specific or system wide. This has no effect on Windows 9x. Value The value to be set, appended or prepended. Variable name The name of the variable that should be modified.
Modify classpath
Changes the classpath of a launcher by modifying or creating a *.vmoptions file or by changing the Info.plist file. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Classpath entries The classpath entries. The items in the list must be separated by semicolons. If you click on the edit button in the property editor, you can enter one item per line in a separate dialog. Entries that are installer variables with array values (e.g. String[] or Object[]) are expanded as separate entries, this allows you to build a variable length list of entries at runtime. Launcher The launcher that the classpath should be changed for. Modification type Modification type
Require admin user
Requires that an admin user executes the installer otherwise fails. On Mac OS X, you can optionally restart the installer as the root user.
Applies to: Installation, Uninstallation
Properties:
Restart as root user If selected and the user is an administrator, he will be asked for his password and the installer will be restarted with root privileges.
Run executable or batch file
Runs an executable or a Windows batch file. The action can optionally wait for termination of the executable.
Applies to: Installation, Uninstallation
Properties:
Arguments The arguments passed to the executable. Please note that in the property sheet, arguments have to be separated by semicolons (;) and in the edit dialog each argument starts on a new line. The items in the list must be separated by semicolons. If you click on the edit button in the property editor, you can enter one item per line in a separate dialog. Arguments that are installer variables with array values (e.g. String[] or Object[]) are expanded as separate arguments, this allows you to build a variable length list of arguments at runtime. Executable The file that should be executed. Please do not add arguments here, there is a separate "Arguments" property. Fail for redirection errors If selected, the action fails if the redirection files cannot be accessed. Otherwise, those errors are silently ignored. Log arguments If the arguments should be written into the log file or not. Disabled by default due to security reasons. Redirection file for stderr A file to which the stderr output of the executed process is saved. If empty, the stderr output will be discarded. Redirection file for stdin A file which should be fed to the input stream of the executed process. If empty, the stdin input will be empty. Redirection file for stdout A file to which the stdout output of the executed process is saved. If empty, the stdout output will be discarded. Wait for termination If the action should wait for termination of the process and check if the return value is 0. Working directory The working directory for the execution.

| Category: Registry modifications
Add access rights for a key in the Windows registry
Add access rights for a key in the Windows registry.
Applies to: Installation, Uninstallation
Properties:
All All available rights. Execute The right to execute the object. Group The group for which the access right should be granted. Key name The name of the registry key without a leading backslash. Read The right to read the object. Registry root The Windows registry root where the key is located. Write The right to write to the object.
Delete a key or value in the Windows registry
Delete a key or value in the Windows registry.
Applies to: Installation, Uninstallation
Properties:
Key name The name of the registry key that should be deleted or contains the value to be deleted without a leading backslash. Only if empty If a key should only be deleted when it contains no sub-keys or values. Registry root The Windows registry root where the key or value should be deleted. Value name The name of the registry value that should be deleted. If you leave this empty, the key will be deleted instead.
Delete a node or key in the Java preference store
Delete an entire package node or a key-value pair in the Java preference store.
Applies to: Installation, Uninstallation
Minimum Java requirement: 1.4
Properties:
Key The key that should be deleted. If you leave this empty, the entire package node will be deleted instead. The action does not return an error if this key does not exist. Only if empty If a node should only be deleted when it contains no sub-nodes or keys. Package name The name of the package node in the preference store that should be deleted or contains the key-value pair to be deleted. The action does not return an error if this package node does not exist. Preference root If you want to delete the node or key-value pair for the current user, all users, or both.
Set a key in the Java preference store
Set a key-value pair in the Java preference store. The package node is created if necessary. This is the most convenient way to communicate settings to your launchers.
Applies to: Installation, Uninstallation
Minimum Java requirement: 1.4
Properties:
Key The key for which a value should be set. Package name The name of the package node in the preference store where the key-value pair should be set. Preference root If you want to set the key for the current user only or for all users. Due to access rights it can happen that the system preference registry is not writable, in that case a fallback to the user specific registry can be tried. Value The string value that should be set for the key.
Set a value in the Windows registry
Set a value in the Windows registry. This action can also create the appropriate key if necessary.
Applies to: Installation, Uninstallation
Properties:
Create key If set the key will be created if it doesn't exist. Key name The name of the registry key that contains the value or that should be created without a leading backslash. Registry root The Windows registry root where the key should be created Value The value that should be written into the registry. Value name The name of the registry value.

| Category: Services
Install a service
Installs a service. On Windows, this is done by executing the service launcher with the appropriate arguments. On Unix, a link will be placed in /etc/init.d. On Mac OS, a StartupItem will be created. This action will be automatically reverted by the 'Uninstall files' action.
Applies to: Installation
Properties:
Add to "Services" screen Ask the user in the "Services" screen whether this action should be performed or not. Allow user to change start type allow user to change the start type on the "Services screen" Service The service launcher that will be invoked. Initially selected Initially selected for installation on the "Services screen". Note that if this property is set to "false" and the "Services screen" is not present, this action will never be performed.
Start a service
Starts a service by executing the service launcher with the appropriate arguments.
Applies to: Installation
Properties:
Autostart only If selected the service will only be started when it is installed as autostart service. Service The service launcher that will be started.
Stop a service
Stops a service by executing the service launcher with the appropriate arguments.
Applies to: Installation, Uninstallation
Properties:
Service The service launcher that will be stopped.

| Category: Text files
Append text to a file
Append text to a file or write text to a new file.
Applies to: Installation, Uninstallation
Properties:
Encoding The encoding of the file. If you leave this empty the system default will be used. Escaped text If selected escape sequences like \n,\t or \u1234 in the text property will be replaced. File The file that the text should be appended to. If it doesn't exist it will be created. Text The text that should be appended.
Fix line feeds
Changes the line feeds of a text file to the platform specific type.
Applies to: Installation, Uninstallation
Properties:
File The file or directory that the line feeds should be fixed for. Recursive If true and file is a directory the operation will be performed recursively. If false and file is a directory the files in this directory will be fixed, but no subdirectories will be entered. Suffixes The suffixes with a leading dot of the files to be fixed if the "File" property is a directory. If empty, all files will be used. The items in the list must be separated by semicolons. If you click on the edit button in the property editor, you can enter one item per line in a separate dialog. Suffixes that are installer variables with array values (e.g. String[] or Object[]) are expanded as separate suffixes, this allows you to build a variable length list of suffixes at runtime.
Modify a text file
Modify an installed text file by replacing a search value in the file.
Applies to: Installation, Uninstallation
Properties:
Encoding The encoding of the file. If you leave this empty the system default will be used. Escape for property file If set, the replaced value will be escaped for use in a Java property file. Text file The text file that should be modified Replace value The value that should be used instead Search value The value that should be searched
Modify a text file with regular expressions
Modify an installed text file by applying a regular expression.
Applies to: Installation, Uninstallation
Minimum Java requirement: 1.4
Properties:
Encoding The encoding of the file. If you leave this empty the system default will be used. Escape for property file If set, the replaced value will be escaped for use in a Java property file. Text file The text file that should be modified. Quote variables If values of installer variables in the match and replacement expressions should be quoted. This means that the characters of replaced installer variables will be treated literally instead of modifying the search or replace expressions with special charaters such as \ or $. Match expression The match expression. Replace all If all occurrences should be replaced or only the first one. Replacement The replacement.

| Category: Update
Check for update
Load the update descriptor from the a URL and save it to the a variable. If sucessful, the variable will contain an instance of com.install4j.api.UpdateDescriptor
Applies to: Installation, Uninstallation
Properties:
Show error message Show a default error message if the download fails. Update descriptor URL The URL from which the update descriptor for this project can be downloaded. The update descriptor file is automatically created when compiling the project and can be found in the media output directory. The URL must start with http://. Variable The installer variable to which an instance of class com.install4j.api.UpdateDescriptor will be saved if the action is sucessful.
Download file
Download a URL and save it to a file
Applies to: Installation, Uninstallation
Properties:
Delete downloaded file on exit If selected, the downloaded file will be deleted when the installer application terminates. Show error message Show a default error message if the download fails. Show file name If selected, the name of the downloaded file and the target directory will be displayed. This setting has no effect if "Show progress" is not selected. Show progress If the action should show its progress with the progress bar. Target file The file to which the downloaded URL will be saved. URL The URL from which the file should be downloaded. The URL must start with http://.
Shut down calling launcher
Shut down the launcher that called this application if it was started with the com.install4j.api.launcher.ApplicationLauncher API.
Applies to: Installation, Uninstallation
Properties:
Timeout The timeout in seconds this action will wait if the 'Wait' property is true. If set to 0 there will be no timeout. Wait If selected the action will wait for the calling launcher to exit.

| Category: XML files
Apply an XSLT transform
Transform an installed file by applying an XSLT stylesheet.
Applies to: Installation, Uninstallation
Minimum Java requirement: 1.4
Properties:
Download external entities If selected, a DTD referenced with an HTTP system ID will be downloaded as the document is parsed. The success of the action requires a direct internet connection in that case. Destination file The output of the transformation. This can be the same file as the source. Source file The source for the transformation. This can be the same file as the destination. Validate XML file If selected, the XML parser will validate the document according to a associated DTD or XML schema. If the validation is unsuccessful, the action will fail. Stylesheet The XSLT stylesheet to apply.
Replace text in XML files
Modify an installed XML file by selecting nodes with an XPath expression and applying a regular expression on the selected values.
Applies to: Installation, Uninstallation
Minimum Java requirement: 1.4
Properties:
Download external entities If selected, a DTD referenced with an HTTP system ID will be downloaded as the document is parsed. The success of the action requires a direct internet connection in that case. XML file The XML file that should be modified. Quote variables If values of installer variables in the match and replacement expressions should be quoted. This means that the characters of replaced installer variables will be treated literally instead of modifying the search or replace expressions with special charaters such as \ or $. Match expression The match expression. Replace all If all occurrences should be replaced or only the first one. Replacement The replacement. Validate XML file If selected, the XML parser will validate the document according to a associated DTD or XML schema. If the validation is unsuccessful, the action will fail. XPath expression The XPath expression to selected DOM nodes that have a value (this includes attributes and text). Example for replacing text in an attribute: '/myRootNode/myChildNode/@myAttribute'. Example for replacing text in an element: '/myRootNode/myChildNode/text()'

Install files
Install all files in the distribution tree that are contained in the selected installation components.
Applies to: Installation
Properties:
Insufficient disk space warning Show a warning message if there is not sufficent disk space for the installation on the selected target drive. Delay if necessary If selected and a destination file cannot be replaced, the operation will be scheduled for the next reboot. The variable sys.rebootRequired will be set to Boolean.TRUE in this case. Directory resolver Expression or script that resolves the actual installation directory separately for each installed file. Return null, if you would like to choose the standard installation directory for a file. File filter Expression or script that is invoked for each file to decide whether to install the file or not. Show file names If set, the names of the files that are installed will be shown during the installation. Trigger reboot if required If selected and an operation is delayed until reboot, the user will be asked for a reboot automatically at the end of installation. Validate application id Check if another application is installed in the selected directory or if the application is not the correct target for an add-on installer. If you have an "installation location" screen, you don't have to select this option.

Uninstall files
Uninstall all installed files.
Applies to: Uninstallation

Uninstall previous installation
Uninstalls the previous installation of this application in the selected installation directory.
Applies to: Installation