Summary
Used to configure executables that may be run during steps in the installation process to do things outside the bounds of MSI technology's feature set. This is the main spot you can extend MSI technology to perform custom processes via compiled code.
Parameters
Attribute | Type | Description | Required | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
action | string | Name of the action. The action normally appears in a sequence table unless it is called by another custom action. If the name matches any built-in action, then the custom action is never called. | True | ||||||||||||
type | string | A field of flag bits specifying the basic type of custom action and options. See Summary List of All Custom Action Types for a list of the basic types. See Custom Action Return Processing Options, Custom Action Execution Scheduling Options, Custom Action Hidden Target Option, and Custom Action In-Script Execution Options. | True | ||||||||||||
source | string | A property name or external key into another table. For a discussion of the possible custom action sources, see Custom Action Sources and the Summary List of All Custom Action Types. For example, the Source column may contain an external key into the first column of one of the following tables containing the source of the custom action code. Directory table for calling existing executables. File table for calling executables and DLLs that have just been installed. Binary table for calling executables, DLLs, and data stored in the database. Property table for calling executables whose paths are held by a property. |
True | ||||||||||||
target | string | An execution parameter that depends on the basic type of custom action. See the Summary List of All Custom Action Types for a description of what should be entered in this field for each type of custom action. For example, this field may contain the following depending on the custom action.
|
True |
Examples
<customactions>
<!-- Custom actions creating entry points into the custom action dll specified in the binary table -->
<customaction action="WEBCA_GatherWebFolderProperties" type="1" source="MSVBDPCADLL" target="GatherWebFolderProperties" />
<customaction action="WEBCA_ApplyWebFolderProperties" type="1537" source="MSVBDPCADLL" target="ApplyWebFolderProperties" />
<customaction action="WEBCA_RollbackApplyWebFolderProperties" type="1281" source="MSVBDPCADLL" target="RollbackApplyWebFolderProperties" />
<customaction action="WEBCA_CreateURLs" type="1" source="MSVBDPCADLL" target="CreateURLs" />
<customaction action="WEBCA_EvaluateURLs" type="1" source="MSVBDPCADLL" target="EvaluateURLs" />
<customaction action="WEBCA_EvaluateURLsNoFail" type="1" source="MSVBDPCADLL" target="EvaluateURLsNoFail" />
<customaction action="WEBCA_EvaluateURLsMB" type="1" source="MSVBDPCADLL" target="EvaluateURLsMB" />
<customaction action="WEBCA_CreateAppRoots" type="1" source="MSVBDPCADLL" target="CreateAppRoots" />
<!-- Custom actions to set default control values in the webfolder dialog -->
<customaction action="WEBCA_TARGETVDIR" type="307" source="TARGETVDIR" target="Default VDir" />
<customaction action="WEBCA_TARGETPORT" type="307" source="TARGETPORT" target="80" />
</customactions>
- Assembly
- NAnt
.Contrib .dll - Namespace
- NAnt
.Contrib .Tasks .Msi - Containing Type
- InstallerTaskBase
Syntax
[BuildElement("customactions", ProcessXml = false)]
public SchemaElement[] InstallerCustomActionsElement { get; set; }
Attributes
Type | Description |
---|---|
BuildElement |
Value
Type | Description |
---|---|
SchemaElement[] |