Skip to main content
Version: v3

MsuPackage Element

Description
Describes a single msu package to install.
Windows Installer references
None
Parents
Chain, PackageGroup
Inner Text
None
Children
Choice of elements (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 MsuPackage. 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).  
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.  
KBString The knowledge base identifier for the MSU. The KB attribute must be specified to enable the MSU package to be uninstalled. Even then MSU uninstallation is only supported on Windows 7 and later. When the KB attribute is specified, the Permanent attribute will the control whether the package is uninstalled.  
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.  
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.  
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