General Properties
Type - shows the custom action's type and it can be a file installed by the package, an attached file, a VBScript, a C++ DLL etc.
See Predefined Custom Actions for a detailed description of the predefined custom actions used in Advanced Installer.
Action Data - represents the value of the CustomActionData property. This property can be retrieved as a regular property inside Deferred custom actions and it is available only for DLL, JScript and VBScript custom actions. A common usage scenario is to use the CustomActionData property in Rollback Custom Actions, since they are also deferred.
Deferred custom actions can receive information about the
installation process, mostly only embedded in the CustomActionData
property. However, this type of custom actions do not have
access to installer properties.
You can specify a text that will be displayed in the progress dialog box or written in the log file, when the custom action is being run. Use the button. The Edit Action Properties Dialog will be displayed and will allow you to specify the text. Note that only deferred custom actions can set an Action Text.
Execution Properties
- Synchronous execution, check return code - the main thread of the installation waits for the custom action thread to complete. Then, the return code of the thread is checked. For more information about custom action return codes, please see the Custom Actions Page.
- Synchronous execution, ignore return code - the main thread of the installation waits for the custom action thread to complete, but the return code of the custom action is ignored.
- Asynchronous execution, wait for return code at the end of the sequence - the main thread waits for the completion of the custom action thread at the end of the sequence. The return code is considered. For more information about custom action return codes, please see the Custom Actions Page.
- Asynchronous execution, do not wait for return - the main thread never waits for completion of the custom action thread and the return code is ignored.
The last two options are not available for custom actions added in
the rollback stage.
Custom actions that are executable files
must return a value of 0 for success. The installer interprets any
other return value as failure.
Execution Options
- Immediate execution - the action will be executed immediately when it is found in the action sequence.
- Deferred - the action will be executed in order as part of the script built out of all the non-immediate actions. Custom Actions before InstallInitialize and after InstallFinalize can not be deferred and they must be Immediate. Note that deferred custom actions do not have access to installer's public properties.
- Rollback - execute the action only if something failed after this action and the installation is being rolled back.
- Commit - the action will be executed in the Commit phase, after everything got installed successfully and there is no possibility for a rollback.
- Deferred with no impersonation - the action uses the Deferred option, but runs under the local system account with full Administrator privileges instead of impersonating the current user.
- Rollback with no impersonation - the action uses the Rollback option, but runs under the local system account with full Administrator privileges instead of impersonating the current user.
- Commit with no impersonation - the action uses the Commit option, but runs under the local system account with full Administrator privileges instead of impersonating the current user.
On Windows Vista or above the custom actions which affect the
system or require Administrator privileges should run without
impersonation (usually "Deferred with no impersonation"). This way
they will run under the local system account with full
privileges.
Scheduling Options
- Always execute - if the action is present in both sequence tables it will be executed twice.
- Execute only once if present in both sequence tables - will skip the execution of the action in the execute sequence if the UI sequence has run. The UI sequence will not be affected.
- Execute once per process if in both sequence tables - if both sequences run in the same client process then the action will be skipped in the execute sequence.
- Execute only if running after UI sequence has run - the action runs only if the execute sequence is run on the client following UI sequence.
- Run when patch is uninstalled (Windows Installer 4.5 or higher) - makes the custom action run only when the patch which contains it is uninstalled.
Execution Condition
- Install - Enable this option if you want your
custom action to execute during installation of the package.
- First Time Install - The custom action will execute during installation of the package if no older version was found on the target computer.
- Upgrade - The custom action will execute during installation of the package only if an older version was found on the target computer.
- Uninstall - Enable this option if you want your
custom action to execute during removal of the package.
- Regular uninstall - The custom action will execute during a complete uninstall of the application, not during an upgrade. This option is available only during InstallExecuteSequence.
- Replaced by a new version - The custom action will execute during removal of the application trigerred by the installation of a new version. This option is available only during InstallExecuteSequence.
- Maintenance - Enable this option if you want your custom action to execute during a repair or customization of the package.
- Condition - a boolean expression which must be true for the Custom Action to be executed. Use the button to edit a conditional statement.
The First Time Install, Upgrade,
Regular uninstall and Replaced by a new
version options may not displayed by default, you should
use the Show upgrade options link to display
them.
Topics
- Edit Action Properties Dialog
Specify a text which is displayed when a custom action runs. - Edit Condition Dialog
This dialog allows you to specify a conditional statement.