Skip to main content
Version: v3

ExePackage Element

Description
Describes a single exe package to install.
Windows Installer references
None
Parents
Chain, PackageGroup
Inner Text
None
Children
Choice of elements (min: 0, max: unbounded)
  • CommandLine (min: 0, max: unbounded)
  • ExitCode (min: 0, max: unbounded)
  • Payload (min: 0, max: unbounded)
  • PayloadGroupRef (min: 0, max: unbounded)
  • RemotePayload (min: 0, max: unbounded)
  • Any Element (namespace='##other' processContents='Lax') Extensibility point in the WiX XML Schema. Schema extensions can register additional elements at this point in the schema. The extension's
    CompilerExtension.ParseElement()
    method will be called with the package identifier as the first value in contextValues.
Attributes
NameTypeDescriptionRequired
AfterString The identifier of another package that this one should be installed after. By default the After attribute is set to the previous sibling package in the Chain or PackageGroup element. If this attribute is specified ensure that a cycle is not created explicitly or implicitly.  
CacheYesNoAlwaysTypeWhether to cache the package. The default is "yes". 
CacheIdStringThe identifier to use when caching the package. 
CompressedYesNoDefaultTypeWhether the package payload should be embedded in a container or left as an external payload. 
DescriptionString Specifies the description to place in the bootstrapper application data manifest for the package. By default, ExePackages use the FileName field from the version information, MsiPackages use the ARPCOMMENTS property, and MspPackages use the Description patch metadata property. Other package types must use this attribute to define a description in the bootstrapper application data manifest.  
DetectConditionString A condition that determines if the package is present on the target system. This condition can use built-in variables and variables returned by searches. This condition is necessary because Windows doesn't provide a method to detect the presence of an ExePackage. Burn uses this condition to determine how to treat this package during a bundle action; for example, if this condition is false or omitted and the bundle is being installed, Burn will install this package.  
DisplayNameString Specifies the display name to place in the bootstrapper application data manifest for the package. By default, ExePackages use the ProductName field from the version information, MsiPackages use the ProductName property, and MspPackages use the DisplayName patch metadata property. Other package types must use this attribute to define a display name in the bootstrapper application data manifest.  
DownloadUrlString

The URL to use to download the package. The following substitutions are supported:

  • 0 is replaced by the package Id.
  • 1 is replaced by the payload Id.
  • 2 is replaced by the payload file name.
 
IdString Identifier for this package, for ordering and cross-referencing. The default is the Name attribute modified to be suitable as an identifier (i.e. invalid characters are replaced with underscores).  
InstallCommandStringThe command-line arguments provided to the ExePackage during install. If this attribute is absent the executable will be launched with no command-line arguments. 
InstallConditionStringA condition to evaluate before installing the package. The package will only be installed if the condition evaluates to true. If the condition evaluates to false and the bundle is being installed, repaired, or modified, the package will be uninstalled. 
InstallSizeString The size this package will take on disk in bytes after it is installed. By default, the binder will calculate the install size by scanning the package (File table for MSIs, Payloads for EXEs) and use the total for the install size of the package.  
LogPathVariableString Name of a Variable that will hold the path to the log file. An empty value will cause the variable to not be set. The default is "WixBundleLog_[PackageId]" except for MSU packages which default to no logging.  
NameString The destination path and file name for this chain payload. Use this attribute to rename the chain entry point or extract it into a subfolder. The default value is the file name from the SourceFile attribute, if provided. At a minimum, the Name or SourceFile attribute must be specified. The use of '..' directories is not allowed.  
PerMachineYesNoDefaultTypeIndicates the package must be executed elevated. The default is "no". 
PermanentYesNoType Specifies whether the package can be uninstalled. The default is "no".  
ProtocolBurnExeProtocolTypeIndicates the communication protocol the package supports for extended progress and error reporting. The default is "none". 
RepairCommandString The command-line arguments to specify to indicate a repair. If the executable package can be repaired but does not require any special command-line arguments to do so then set the attribute's value to blank. To indicate that the package does not support repair, omit this attribute.  
RollbackLogPathVariableString Name of a Variable that will hold the path to the log file used during rollback. An empty value will cause the variable to not be set. The default is "WixBundleRollbackLog_[PackageId]" except for MSU packages which default to no logging.  
SourceFileString Location of the package to add to the bundle. The default value is the Name attribute, if provided. At a minimum, the SourceFile or Name attribute must be specified.  
SuppressSignatureVerificationYesNoType By default, a Bundle will use the hash of a package to verify its contents. If this attribute is explicitly set to "no" and the package is signed with an Authenticode signature the Bundle will verify the contents of the package using the signature instead. Therefore, the default for this attribute could be considered to be "yes". It is unusual for "yes" to be the default of an attribute. In this case, the default was changed in WiX v3.9 after experiencing real-world issues with Windows verifying Authenticode signatures. Since the Authenticode signatures are no more secure than hashing the packages directly, the default was changed.  
UninstallCommandStringThe command-line arguments provided to the ExePackage during uninstall. If this attribute is absent the executable will be launched with no command-line arguments. To prevent an ExePackage from being uninstalled set the Permanent attribute to "yes". 
VitalYesNoType Specifies whether the package must succeed for the chain to continue. The default "yes" indicates that if the package fails then the chain will fail and rollback or stop. If "no" is specified then the chain will continue even if the package reports failure.  
Any Attribute (namespace='##other' processContents='lax') Extensibility point in the WiX XML Schema. Schema extensions can register additional attributes at this point in the schema. The extension's
CompilerExtension.ParseAttribute()
method will be called with the package identifier in
contextValues["PackageId"]
.
PrereqSupportPackageYesNoType When set to "yes", the Prereq BA will plan the package to be installed if its InstallCondition is "true" or empty. (http://schemas.microsoft.com/wix/BalExtension) 
See Also
Wix Schema