Skip to main content
Version: v3

MsiPackage Element

Description
Describes a single msi package to install.
Windows Installer references
None
Parents
Chain, PackageGroup
Inner Text
None
Children
Choice of elements (min: 0, max: unbounded)
  • MsiProperty (min: 0, max: unbounded)
  • Payload (min: 0, max: unbounded)
  • PayloadGroupRef (min: 0, max: unbounded)
  • SlipstreamMsp (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.  
DisplayInternalUIYesNoType Specifies whether the bundle will show the UI authored into the msi package. The default is "no" which means all information is routed to the bootstrapper application to provide a unified installation experience. If "yes" is specified the UI authored into the msi package will be displayed on top of any bootstrapper application UI.  
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.
 
EnableFeatureSelectionYesNoType Specifies whether the bundle will allow individual control over the installation state of Features inside the msi package. Managing feature selection requires special care to ensure the install, modify, update and uninstall behavior of the package is always correct. The default is "no".  
ForcePerMachineYesNoType Override the automatic per-machine detection of MSI packages and force the package to be per-machine. The default is "no", which allows the tools to detect the expected value.  
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).  
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.  
PermanentYesNoType Specifies whether the package can be uninstalled. The default is "no".  
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.  
SuppressLooseFilePayloadGenerationYesNoType This attribute has been deprecated. When the value is "yes", the Binder will not read the MSI package to detect uncompressed files that would otherwise be automatically included in the Bundle as Payloads. The resulting Bundle may not be able to install the MSI package correctly. The default is "no".  
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.  
VisibleYesNoType Specifies whether the MSI will be displayed in Programs and Features (also known as Add/Remove Programs). If "yes" is specified the MSI package information will be displayed in Programs and Features. The default "no" indicates the MSI will not be displayed.  
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