WiX Database XML Schema

Table of Contents

WiX Database XML Schema

Description

Schema for describing Windows Installer database files (.msi/.msm/.pcp).

Remarks

Copyright (c) Microsoft Corporation. All rights reserved.

The use and distribution terms for this software are covered by the Common Public License 1.0 (http://opensource.org/licenses/cpl.php) which can be found in the file CPL.TXT at the root of this distribution. By using this software in any fashion, you are agreeing to be bound by the terms of this license.

You must not remove this notice, or any other, from this software.

See Also

Elements | Attributes | Complex Types | Simple Types

Elements: WiX Database

Elements

Name  Description 
AdminExecuteSequence   
AdminUISequence   
AdvertiseExecuteSequence   
AllocateRegistrySpace  Ensures the needed amount of space exists in the registry.
AppData  Optional way for defining AppData, generally used for complex CDATA.
AppId  Application ID containing DCOM information for the associated application GUID.

AppSearch  Uses file signatures to search for existing versions of products.
AssemblyName  The MsiAssemblyName table specifies the schema for the elements of a strong assembly cache name for a .NET Framework or Win32 assembly.

Billboard  Billboard to display during install of a Feature
BillboardAction  Billboard action during which child Billboards are displayed
Binary  Binary data used for CustomAction elements and UI controls.
BinaryRef  Used only for PatchFamilies to include only a binary table entry in a patch.
BindImage  Binds each executable or DLL that must be bound to the DLLs imported by it.
Category  Qualified published component for parent Component
CCPSearch  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
Class  COM Class registration for parent Component.
Column  Column definition for a Custom Table
ComboBox  Set of items for a particular ComboBox control tied to an install Property
ComplianceCheck  Adds a row to the CCPSearch table.
ComplianceDrive  Sets the parent of a nested DirectorySearch element to CCP_DRIVE.
Component  Component for parent Directory
ComponentGroup  Groups together multiple components to be used in other locations.
ComponentGroupRef  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  Create a reference to a Feature element in another Fragment.
ComponentSearch  Searches for file or directory and assigns to value of parent Property.
Condition  Conditions for components, controls, features, and products.
Configuration  Defines the configurable attributes of merge module.
ConfigurationData  Data to use as input to a configurable merge module.
Control  Contains the controls that appear on each dialog.
CopyFile  Copy or move an existing file on the target machine, or copy a file that is being installed, to another destination.
CostFinalize  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  Initiates the internal installation costing process.
CreateFolder  Create folder as part of parent Component.
CreateFolders  Creates empty folders for components that are set to be installed.
CreateShortcuts  Manages the creation of shortcuts.
Custom  Use to sequence a custom action.
CustomAction  Specifies a custom action to be added to the MSI CustomAction table.
CustomActionRef  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
CustomProperty  A custom property for the PatchMetadata table.
CustomTable  Defines a custom table for use from a custom action.
Data  Used for a Custom Table. Specifies the data for the parent Row and specified Column.
DeleteServices  Stops a service and removes its registration from the system.
Dependency  Declares a dependency on another merge module.
Dialog  Defines a dialog box in the Dialog Table.
DialogRef  Reference to a Dialog.
DigitalCertificate  Adds a digital certificate.
DigitalSignature  Adds a digital signature.
Directory  Directory layout for the product.
DirectoryRef  Create a reference to a Directory element in another Fragment.
DirectorySearch  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  References an existing DirectorySearch element.
DisableRollback  Disables rollback for the remainder of the installation.
DuplicateFiles  Duplicates files installed by the InstallFiles action.
EmbeddedChainer   
EmbeddedChainerRef  Reference to an EmbeddedChainer element.
EmbeddedUI  Element value is the condition.
EmbeddedUIResource  Defines a resource for use by the embedded UI.
EnsureTable  Use this element to ensure that a table appears in the installer database, even if its empty.
Environment  Environment variables added or removed for the parent component.
Error   
Exclusion  Declares a merge module with which this merge module is incompatible.
ExecuteAction  Initiates the execution sequence.
Extension  Extension for a Component
ExternalFile  Contains information about specific files that are not part of a regular target image.
Family  Group of one or more upgraded images of a product.
Feature  A feature for the Feature table.
FeatureGroup  Groups together multiple components, features, and merges to be used in other locations.
FeatureGroupRef  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  Create a reference to a Feature element in another Fragment.
File  File specification for File table, must be child node of Component.
FileCost  Initiates dynamic costing of standard installation actions.
FileSearch  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  References an existing FileSearch element.
FileTypeMask  FileType data for class Id registration.
FindRelatedProducts  Runs through each record of the Upgrade table in sequence and compares the upgrade code, product version, and language in each row to products installed on the system.
ForceReboot  Prompts the user for a restart of the system during the installation.
Fragment  The Fragment element is the building block of creating an installer database in WiX.
Icon  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)
IconRef  Used only for PatchFamilies to include only a icon table entry in a patch.
IgnoreModularization  This element has been deprecated.
IgnoreRange  Specifies part of a file that is to be ignored during patching.
IgnoreTable  Specifies a table from the merge module that is not merged into an .msi file.

Include  This is the top-level container element for every wxi file.
IniFile  Adds or removes .ini file entries.
IniFileSearch  Searches for file, directory or registry key and assigns to value of parent Property
InstallAdminPackage  Copies the product database to the administrative installation point. The condition for this action may be specified in the element's inner text.
InstallExecute  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallExecuteAgain  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallExecuteSequence   
InstallFiles  Copies files specified in the File table from the source directory to the destination directory.
InstallFinalize  Marks the end of a sequence of actions that change the system.
InstallInitialize  Marks the beginning of a sequence of actions that change the system.
InstallODBC  Installs the drivers, translators, and data sources in the ODBCDriver table, ODBCTranslator table, and ODBCDataSource table.
InstallServices  Registers a service for the system.
InstallUISequence   
InstallValidate  Verifies that all costed volumes have enough space for the installation.
Instance  Defines an instance transform for your product.
InstanceTransforms  Use this element to contain definitions for instance transforms.
Interface  COM Interface registration for parent Typelib.
IsolateComponent  Shared Component to be privately replicated in folder of parent Component
IsolateComponents  Installs a copy of a component (commonly a shared DLL) into a private location for use by a specific application (typically an .exe).
LaunchConditions  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
ListBox  Set of items for a particular ListBox control tied to an install Property
ListItem  The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.
ListView  Set of items for a particular ListView control tied to an install Property
Media  Media element describes a disk that makes up the source media for the installation.
Merge  Merge directive to bring in a merge module that will be redirected to the parent directory.
MergeRef  Merge reference to connect a Merge Module to parent Feature
MigrateFeatureStates  Used for upgrading or installing over an existing application.
MIME  MIME content-type for an Extension
Module  The Module element is analogous to the main function in a C program.
MoveFiles  Locates existing files on the system and moves or copies those files to a new location.
MsiPublishAssemblies  Manages the advertisement of CLR and Win32 assemblies.
MsiUnpublishAssemblies  Manages the unadvertisement of CLR and Win32 assemblies that are being removed.
MultiStringValue  Use several of these elements to specify each registry value in a multiString registry value.
ODBCDataSource  ODBCDataSource for a Component
ODBCDriver  ODBCDriver for a Component
ODBCTranslator  ODBCTranslator for a Component
OptimizeCustomActions  Indicates whether custom actions can be skipped when applying the patch.
Package  Properties about the package to be placed in the Summary Information Stream.
Patch  The Patch element is analogous to the main function in a C program.
PatchBaseline  Identifies a set of product versions.
PatchCertificates  Identifies the possible signer certificates used to digitally sign patches.
PatchCreation  The PatchCreation element is analogous to the main function in a C program.
PatchFamily  Collection of items that should be kept from the differences between two products.
PatchFamilyRef  This will cause the entire contents of the Fragment containing the referenced PatchFamily to be used in the process of creating a patch.
PatchFiles  Queries the Patch table to determine which patches are to be applied.
PatchInformation  Properties about the patch to be placed in the Summary Information Stream.
PatchMetadata  Properties about the patch to be placed in the PatchMetadata table.
PatchProperty  A property for this patch database.
PatchSequence  Sequence information for this patch database.
Permission  Sets ACLs on File, Registry, or CreateFolder.
ProcessComponents  Registers and unregisters components, their key paths, and the component clients.
Product  The Product element is analogous to the main function in a C program.
ProgId  ProgId registration for parent Component.
ProgressText   
Property  Property value for a Product or Module.
PropertyRef  Reference to a Property value.
ProtectFile  Specifies a file to be protected.
ProtectRange  Specifies part of a file that cannot be overwritten during patching.
Publish   
PublishComponents  Manages the advertisement of the components from the PublishComponent table.
PublishFeatures  Writes each feature's state into the system registry.
PublishProduct  Manages the advertisement of the product information with the system.
RadioButton  Text or Icon plus Value that is assigned to the Property of the parent Control (RadioButtonGroup).
RadioButtonGroup  Set of radio buttons tied to the specified Property
RegisterClassInfo  Manages the registration of COM class information with the system.
RegisterComPlus  Registers COM+ applications.
RegisterExtensionInfo  Manages the registration of extension related information with the system.
RegisterFonts  Registers installed fonts with the system.
RegisterMIMEInfo  Registers MIME-related registry information with the system.
RegisterProduct  Registers the product information with the installer.
RegisterProgIdInfo  Manages the registration of OLE ProgId information with the system.
RegisterTypeLibraries  Registers type libraries with the system.
RegisterUser  Registers the user information with the installer to identify the user of a product.
Registry   
RegistryKey  Used for organization of child RegistryValue elements or to create a registry key (and optionally remove it during uninstallation).
RegistrySearch  Searches for file, directory or registry key and assigns to value of parent Property
RegistrySearchRef  References an existing RegistrySearch element.
RegistryValue  Used to create a registry value. For multi-string values, this can be used to prepend or append values.
RemoveDuplicateFiles  Deletes files installed by the DuplicateFiles action.
RemoveEnvironmentStrings  Modifies the values of environment variables.
RemoveExistingProducts  Goes through the product codes listed in the ActionProperty column of the Upgrade table and removes the products in sequence.
RemoveFile  Remove a file(s) if the parent component is selected for installation or removal.
RemoveFiles  Removes files previously installed by the InstallFiles action.
RemoveFolder  Remove an empty folder if the parent component is selected for installation or removal.
RemoveFolders  Removes any folders linked to components set to be removed or run from source.
RemoveIniValues  Removes .ini file information specified for removal in the RemoveIniFile table if the component is set to be installed locally or run from source.
RemoveODBC  Removes the data sources, translators, and drivers listed for removal during the installation.
RemoveRegistryKey  Used for removing registry keys and all child keys either during install or uninstall.
RemoveRegistryValue  Used to remove a registry value during installation.
RemoveRegistryValues  Removes a registry value that has been authored into the registry table if the associated component was installed locally or as run from source, and is now set to be uninstalled.
RemoveShortcuts  Manages the removal of an advertised shortcut whose feature is selected for uninstallation or a nonadvertised shortcut whose component is selected for uninstallation.
ReplacePatch  A patch that is deprecated by this patch.
ReserveCost  Disk cost to reserve in a folder for running locally and/or from source.
ResolveSource  Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.
RMCCPSearch  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
Row  Row data for a Custom Table
ScheduleReboot  Prompts the user to restart the system at the end of installation.
SelfRegModules  Processes all modules listed in the SelfReg table and registers all installed modules with the system.
SelfUnregModules  Unregisters all modules listed in the SelfReg table that are scheduled to be uninstalled.
ServiceArgument  Argument used in ServiceControl parent
ServiceControl  Starts, stops, and removes services for parent Component.
ServiceDependency  Service or group of services that must start before the parent service.
ServiceInstall  Adds and removes services for parent Component.
SetDirectory  Sets a Directory to a particular value.
SetODBCFolders  Checks for existing ODBC drivers and sets the target directory for each new driver to the location of an existing driver.
SetProperty  Sets a Property to a particular value.
SFPCatalog  Adds a system file protection update catalog file
SFPFile  Provides a many-to-many mapping from the SFPCatalog table to the File table
Shortcut  Shortcut, default target is parent File, CreateFolder, or Component's Directory
Show   
StartServices  Starts system services.
StopServices  Stops system services.
Subscribe  Sets attributes for events in the EventMapping table
Substitution  Specifies the configurable fields of a module database and provides a template for the configuration of each field.
SymbolPath  A path to symbols.
TargetFile  Information about specific files in a target image.
TargetImage  Contains information about the target images of the product.
TargetProductCode  A product code for a product that may receive this patch (or '*' for all products).
Text  An alternative to using the Text attribute when the value contains special XML characters like <, >, or &.
TextStyle   
TypeLib  Register a type library (TypeLib).
UI  Enclosing element to compartmentalize UI specifications.
UIRef  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
UIText  Text associated with certain controls
UnpublishComponents  Manages the unadvertisement of components listed in the PublishComponent table.
UnpublishFeatures  Removes selection-state and feature-component mapping information from the registry.
UnregisterClassInfo  Manages the removal of COM class information from the system registry.
UnregisterComPlus  Removes COM+ applications from the registry.
UnregisterExtensionInfo  Manages the removal of extension-related information from the system registry.
UnregisterFonts  Removes registration information about installed fonts from the system.
UnregisterMIMEInfo  Unregisters MIME-related registry information from the system.
UnregisterProgIdInfo  Manages the unregistration of OLE ProgId information with the system.
UnregisterTypeLibraries  Unregisters type libraries from the system.
Upgrade  Upgrade info for a particular UpgradeCode
UpgradeFile  Specifies files to either ignore or to specify optional data about a file.
UpgradeImage  Contains information about the upgraded images of the product.
UpgradeVersion   
Validate  Sets information on the patch transform that determines to which product the transform applies and what errors should be ignored when applying the patch transform.
ValidateProductID  Sets the ProductID property to the full product identifier.
Verb  Verb definition for an Extension.
Wix  This is the top-level container element for every wxs file.
WixVariable  This element exposes advanced WiX functionality.
WriteEnvironmentStrings  Modifies the values of environment variables.
WriteIniValues  Writes the .ini file information that the application needs written to its .ini files.
WriteRegistryValues  Sets up an application's registry information.

Element: AdminExecuteSequence

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
CostFinalize  ActionSequenceType  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  ActionSequenceType  Initiates the internal installation costing process.
Custom  string (extension)  Use to sequence a custom action.
FileCost  ActionSequenceType  Initiates dynamic costing of standard installation actions.
InstallAdminPackage  ActionSequenceType  Copies the product database to the administrative installation point. The condition for this action may be specified in the element's inner text.
InstallFiles  ActionSequenceType  Copies files specified in the File table from the source directory to the destination directory.
InstallFinalize  ActionSequenceType  Marks the end of a sequence of actions that change the system.
InstallInitialize  ActionSequenceType  Marks the beginning of a sequence of actions that change the system.
InstallValidate  ActionSequenceType  Verifies that all costed volumes have enough space for the installation.
LaunchConditions  ActionModuleSequenceType  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
ResolveSource  ActionModuleSequenceType  Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.

Element: AdminUISequence

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
CostFinalize  ActionSequenceType  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  ActionSequenceType  Initiates the internal installation costing process.
Custom  string (extension)  Use to sequence a custom action.
ExecuteAction  ActionSequenceType  Initiates the execution sequence.
FileCost  ActionSequenceType  Initiates dynamic costing of standard installation actions.
InstallAdminPackage  ActionSequenceType  Copies the product database to the administrative installation point. The condition for this action may be specified in the element's inner text.
InstallFiles  ActionSequenceType  Copies files specified in the File table from the source directory to the destination directory.
InstallFinalize  ActionSequenceType  Marks the end of a sequence of actions that change the system.
InstallInitialize  ActionSequenceType  Marks the beginning of a sequence of actions that change the system.
InstallValidate  ActionSequenceType  Verifies that all costed volumes have enough space for the installation.
LaunchConditions  ActionModuleSequenceType  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
Show  string (extension)   

Element: AdvertiseExecuteSequence

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
CostFinalize  ActionSequenceType  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  ActionSequenceType  Initiates the internal installation costing process.
CreateShortcuts  ActionSequenceType  Manages the creation of shortcuts.
Custom  string (extension)  Use to sequence a custom action.
InstallFinalize  ActionSequenceType  Marks the end of a sequence of actions that change the system.
InstallInitialize  ActionSequenceType  Marks the beginning of a sequence of actions that change the system.
InstallValidate  ActionSequenceType  Verifies that all costed volumes have enough space for the installation.
MsiPublishAssemblies  ActionSequenceType  Manages the advertisement of CLR and Win32 assemblies.
PublishComponents  ActionSequenceType  Manages the advertisement of the components from the PublishComponent table.
PublishFeatures  ActionSequenceType  Writes each feature's state into the system registry.
PublishProduct  ActionSequenceType  Manages the advertisement of the product information with the system.
RegisterClassInfo  ActionSequenceType  Manages the registration of COM class information with the system.
RegisterExtensionInfo  ActionSequenceType  Manages the registration of extension related information with the system.
RegisterMIMEInfo  ActionSequenceType  Registers MIME-related registry information with the system.
RegisterProgIdInfo  ActionSequenceType  Manages the registration of OLE ProgId information with the system.

Element: AllocateRegistrySpace

Description

Ensures the needed amount of space exists in the registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: AppData

Description

Optional way for defining AppData, generally used for complex CDATA.

Derived By

Type string

Element: AppId

Description

Application ID containing DCOM information for the associated application GUID.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
ActivateAtStorage  YesNoType  Set this value to 'yes' to configure the client to activate on the same system as persistent storage.
Advertise  YesNoType  Set this value to 'yes' in order to create a normal AppId table row. Set this value to 'no' in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).
Description  string  Set this value to the description of the AppId.
DllSurrogate  string  Set this value to specify that the class is a DLL that is to be activated in a surrogate EXE process, and the surrogate process to be used is the path of a surrogate EXE file specified by the value.
Id  Guid  Set this value to the AppID GUID that corresponds to the named executable.
LocalService  string  Set this value to the name of a service to allow the object to be installed as a Win32 service.
RemoteServerName  string  Set this value to the name of the remote server to configure the client to request the object be run at a particular machine whenever an activation function is called for which a COSERVERINFO structure is not specified.
RunAsInteractiveUser  YesNoType  Set this value to 'yes' to configure a class to run under the identity of the user currently logged on and connected to the interactive desktop when activated by a remote client without being written as a Win32 service.
ServiceParameters  string  Set this value to the parameters to be passed to a LocalService on invocation.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Class  anyType (restriction)  COM Class registration for parent Component.

Remarks

If this element is nested under a Fragment, Module, or Product element, it must be advertised.

Element: AppSearch

Description

Uses file signatures to search for existing versions of products.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The AppSearch action may use this information to determine where upgrades are to be installed. The AppSearch action can also be used to set a property to the existing value of an registry or .ini file entry. AppSearch should be authored into the InstallUISequence table and InstallExecuteSequence table. The installer prevents The AppSearch action from running in the InstallExecuteSequence sequence if the action has already run in InstallUISequence sequence. The AppSearch action searches for file signatures using the CompLocator table first, the RegLocator table next, then the IniLocator table, and finally the DrLocator table. The condition for this action may be specified in the element's inner text.

Element: AssemblyName

Description

The MsiAssemblyName table specifies the schema for the elements of a strong assembly cache name for a .NET Framework or Win32 assembly.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Name of the attribute associated with the value specified in the Value column.
Value  string  Value associated with the name specified in the Name column.

Content Model

Always empty.

Remarks

Consider using the Assembly attribute on File element to have the toolset populate these entries automatically.

Element: Billboard

Description

Billboard to display during install of a Feature

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for the Billboard.
Feature  string  Feature whose state determines if the Billboard is shown.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Control  anyType (restriction)  Contains the controls that appear on each dialog.

Element: BillboardAction

Description

Billboard action during which child Billboards are displayed

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Action name that determines when the Billboard should be shown.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Billboard  anyType (restriction)  Billboard to display during install of a Feature

Element: Binary

Description

Binary data used for CustomAction elements and UI controls.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The Id cannot by longer than 55 characters.
SourceFile  string  Path to the binary file.
src  string   
SuppressModularization  YesNoType  Use to suppress modularization of this Binary identifier in merge modules.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.

Element: BinaryRef

Description

Used only for PatchFamilies to include only a binary table entry in a patch.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Binary element to reference.

Content Model

Always empty.

Element: BindImage

Description

Binds each executable or DLL that must be bound to the DLLs imported by it.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Category

Description

Qualified published component for parent Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  A string GUID that represents the category of components being grouped together.
Qualifier  string  A text string that qualifies the value in the Id attribute.
AppData  string  An optional localizable text describing the category.
Feature  string  Feature that controls the advertisement of the category.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
AppData  string  Optional way for defining AppData, generally used for complex CDATA.

Element: CCPSearch

Description

Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The CCPSearch action should be authored into the InstallUISequence table and InstallExecuteSequence table. The installer prevents the CCPSearch action from running in the InstallExecuteSequence sequence if the action has already run in InstallUISequence sequence. The CCPSearch action must come before the RMCCPSearch action. The condition for this action may be specified in the element's inner text.

Element: Class

Description

COM Class registration for parent Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  The Class identifier (CLSID) of a COM server.
Context  anySimpleType (list)  The server context(s) for this server.
Description  string  Localized description associated with the Class ID and Program ID.
AppId  Guid  This attribute is only allowed when a Class is advertised.
Icon  string  The file providing the icon associated with this CLSID.
IconIndex  integer  Icon index into the icon file.
Handler  string  The default inproc handler.
Argument  string  This column is optional only when the Context column is set to "LocalServer" or "LocalServer32" server context.
RelativePath  YesNoType  When the value is "yes", the bare file name can be used for COM servers.
Advertise  YesNoType  Set this value to "yes" in order to create a normal Class table row. Set this value to "no" in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).
ThreadingModel  NMTOKEN (restriction)  Threading model for the CLSID.
Version  string  Version for the CLSID.
Insertable  YesNoType  Specifies the CLISD may be insertable.
Programmable  YesNoType  Specifies the CLSID may be programmable.
Server  string  May only be specified if the value of the Advertise attribute is "no".
ShortPath  YesNoType  Specifies whether or not to use the short path for the COM server.
SafeForScripting  YesNoType  May only be specified if the value of the Advertise attribute is "no".
SafeForInitializing  YesNoType  May only be specified if the value of the Advertise attribute is "no".
Control  YesNoType  Set this attribute's value to 'yes' to identify an object as an ActiveX Control.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
FileTypeMask  anyType (restriction)  FileType data for class Id registration.
Interface  anyType (restriction)  COM Interface registration for parent Typelib.
ProgId  anyType (restriction)  ProgId registration for parent Component.

Element: Column

Description

Column definition for a Custom Table

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the column.
PrimaryKey  YesNoType  Whether this column is a primary key.
Type  NMTOKEN (restriction)  The type of this column.
Width  integer  Width of this column.
Nullable  YesNoType  Whether this column can be left null.
Localizable  YesNoType  Whether this column can be localized.
MinValue  integer  Minimum value for a numeric value, date or version in this column.
MaxValue  integer  Maximum value for a numeric value, date or version in this column.
KeyTable  string  Table in which this column is an external key.
KeyColumn  integer  Column in the table in KeyTable attribute.
Category  NMTOKEN (restriction)  Category of this column.
Set  string  Semicolon delimited list of permissible values.
Description  string  Description of this column.
Modularize  NMTOKEN (restriction)  How this column should be modularized, if at all.

Content Model

Always empty.

Element: ComboBox

Description

Set of items for a particular ComboBox control tied to an install Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Property  string  Property tied to this group

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ListItem  anyType (restriction)  The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.

Element: ComplianceCheck

Description

Adds a row to the CCPSearch table.

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
ComplianceDrive  anyType (restriction)  Sets the parent of a nested DirectorySearch element to CCP_DRIVE.
ComponentSearch  anyType (restriction)  Searches for file or directory and assigns to value of parent Property.
RegistrySearch  anyType (restriction)  Searches for file, directory or registry key and assigns to value of parent Property
IniFileSearch  anyType (restriction)  Searches for file, directory or registry key and assigns to value of parent Property
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.

Element: ComplianceDrive

Description

Sets the parent of a nested DirectorySearch element to CCP_DRIVE.

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.

Element: Component

Description

Component for parent Directory

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Component identifier; this is the primary key for identifying components.
ComPlusFlags  integer  Set this attribute to create a ComPlus entry.
DisableRegistryReflection  YesNoType  Set this attribute to 'yes' in order to disable registry reflection on all existing and new registry keys affected by this component.
Directory  string  Sets the Directory of the Component.
DiskId  integer  This attribute must be set either on a Component element or all of its children File elements.
Feature  string  Identifies a feature to which this component belongs, as a shorthand for a child ComponentRef element of the Feature element.
Guid  ComponentGuid  This value should be a guid that uniquely identifies this component's contents, language, platform, and version.

KeyPath  YesNoType  If this attribute's value is set to 'yes', then the Directory of this Component is used as the KeyPath.
Location  NMTOKEN (restriction)   
NeverOverwrite  YesNoType  If this attribute is set to 'yes', the installer does not install or reinstall the component if a key path file or a key path registry entry for the component already exists.
Permanent  YesNoType  If this attribute is set to 'yes', the installer does not remove the component during an uninstall.
Shared  YesNoType  If this attribute's value is set to 'yes', enables advanced patching semantics for Components that are shared across multiple Products.
SharedDllRefCount  YesNoType  If this attribute's value is set to 'yes', the installer increments the reference count in the shared DLL registry of the component's key file.
Transitive  YesNoType  If this attribute is set to 'yes', the installer reevaluates the value of the statement in the Condition upon a reinstall.
UninstallWhenSuperseded  YesNoType  If this attribute is set to 'yes', the installer will uninstall the Component's files and registry keys when it is superseded by a patch.
Win64  YesNoType  Set this attribute to 'yes' to mark this as a 64-bit component.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

Category  anyType (restriction)  Qualified published component for parent Component
Class  anyType (restriction)  COM Class registration for parent Component.
Condition  string (extension)  Conditions for components, controls, features, and products.
CopyFile  anyType (restriction)  Copy or move an existing file on the target machine, or copy a file that is being installed, to another destination.
CreateFolder  anyType (restriction)  Create folder as part of parent Component.
Environment  anyType (restriction)  Environment variables added or removed for the parent component.
Extension  anyType (restriction)  Extension for a Component
File  anyType (restriction)  File specification for File table, must be child node of Component.
IniFile  anyType (restriction)  Adds or removes .ini file entries.
Interface  anyType (restriction)  COM Interface registration for parent Typelib.
IsolateComponent  anyType (restriction)  Shared Component to be privately replicated in folder of parent Component
ODBCDataSource  anyType (restriction)  ODBCDataSource for a Component
ODBCDriver  anyType (restriction)  ODBCDriver for a Component
ODBCTranslator  anyType (restriction)  ODBCTranslator for a Component
ProgId  anyType (restriction)  ProgId registration for parent Component.
Registry  anyType (restriction)   
RegistryKey  anyType (restriction)  Used for organization of child RegistryValue elements or to create a registry key (and optionally remove it during uninstallation).
RegistryValue  anyType (restriction)  Used to create a registry value. For multi-string values, this can be used to prepend or append values.
RemoveFile  anyType (restriction)  Remove a file(s) if the parent component is selected for installation or removal.
RemoveFolder  anyType (restriction)  Remove an empty folder if the parent component is selected for installation or removal.
RemoveRegistryKey  anyType (restriction)  Used for removing registry keys and all child keys either during install or uninstall.
RemoveRegistryValue  anyType (restriction)  Used to remove a registry value during installation.
ReserveCost  anyType (restriction)  Disk cost to reserve in a folder for running locally and/or from source.
ServiceControl  anyType (restriction)  Starts, stops, and removes services for parent Component.
ServiceInstall  anyType (restriction)  Adds and removes services for parent Component.
Shortcut  anyType (restriction)  Shortcut, default target is parent File, CreateFolder, or Component's Directory
SymbolPath  anyType (restriction)  A path to symbols.
TypeLib  anyType (restriction)  Register a type library (TypeLib).

Element: ComponentGroup

Description

Groups together multiple components to be used in other locations.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the ComponentGroup.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
ComponentGroupRef  anyType (restriction)  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.

Element: ComponentGroupRef

Description

Create a reference to a ComponentGroup in another Fragment.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the ComponentGroup to reference.
Primary  YesNoType  Set this attribute to 'yes' in order to make the parent feature of this component the primary feature for this component.

Content Model

Always empty.

Element: ComponentRef

Description

Create a reference to a Feature element in another Fragment.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Component element to reference.
Primary  YesNoType  Set this attribute to 'yes' in order to make the parent feature of this component the primary feature for this component.

Content Model

Always empty.

Element: ComponentSearch

Description

Searches for file or directory and assigns to value of parent Property.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   
Guid  Guid  The component ID of the component whose key path is to be used for the search.
Type  NMTOKEN (restriction)  Must be file if last child is FileSearch element and must be directory if last child is DirectorySearch element.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.
FileSearch  anyType (restriction)  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  anyType (restriction)  References an existing FileSearch element.

Element: Condition

Description

Conditions for components, controls, features, and products.

Derived By

Extending string

Attributes

Name  Type  Description 
Action  NMTOKEN (restriction)  Used only under Control elements and is required. Allows specific actions to be applied to a control based on the result of this condition.
Level  integer  Used only under Feature elements and is required.
Message  string  Used only under Fragment or Product elements and is required.

Content Model

Contains text only.

Remarks

The condition is specified in the inner text of the element.

Element: Configuration

Description

Defines the configurable attributes of merge module.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Name  string  Defines the name of the configurable item.
Format  string (restriction)  Specifies the format of the data being changed.
Type  string  Specifies the type of the data being changed.
ContextData  string  Specifies a semantic context for the requested data.
DefaultValue  string  Specifies a default value for the item in this record if the merge tool declines to provide a value.
KeyNoOrphan  YesNoType  Does not merge rule according to rules in MSI SDK.
NonNullable  YesNoType  If yes, null is not a valid entry.
DisplayName  string  Display name for authoring.
Description  string  Description for authoring.
HelpLocation  string  Location of chm file for authoring.
HelpKeyword  string  Keyword into chm file for authoring.

Content Model

Always empty.

Element: ConfigurationData

Description

Data to use as input to a configurable merge module.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Name  string  Key into the ModuleConfiguration table.
Value  string  Value to be passed to configurable merge module.

Content Model

Always empty.

Element: Control

Description

Contains the controls that appear on each dialog.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Combined with the Dialog Id to make up the primary key of the Control table.
Type  string  The type of the control.
X  LocalizableInteger  Horizontal coordinate of the upper-left corner of the rectangular boundary of the control.
Y  LocalizableInteger  Vertical coordinate of the upper-left corner of the rectangular boundary of the control.
Width  LocalizableInteger  Width of the rectangular boundary of the control.
Height  LocalizableInteger  Height of the rectangular boundary of the control.
Property  string  The name of a defined property to be linked to this control.
Text  string  A localizable string used to set the initial text contained in a control.
Help  string  This attribute is reserved for future use.
ToolTip  string  The string used for the Tooltip.
CheckBoxValue  string  This attribute is only valid for CheckBox Controls.
TabSkip  YesNoType  Set this attribute to "yes" to cause this Control to be skipped in the tab sequence.
Default  YesNoType  Set this attribute to "yes" to cause this Control to be invoked by the return key.
Cancel  YesNoType  Set this attribute to "yes" to cause this Control to be invoked by the escape key.
Hidden  YesNoType  Set this attribute to "yes" to cause the Control to be hidden.
Disabled  YesNoType  Set this attribute to "yes" to cause the Control to be disabled.
Sunken  YesNoType  Set this attribute to "yes" to cause the Control to be sunken.
Indirect  YesNoType  Specifies whether the value displayed or changed by this control is referenced indirectly.
Integer  YesNoType  Set this attribute to "yes" to cause the linked Property value for the Control to be treated as an integer. Otherwise, the Property will be treated as a string.
RightToLeft  YesNoType  Set this attribute to "yes" to cause the Control to display from right to left.
RightAligned  YesNoType  Set this attribute to "yes" to cause the Control to be right aligned.
LeftScroll  YesNoType  Set this attribute to "yes" to cause the scroll bar to display on the left side of the Control.
Transparent  YesNoType  This attribute is only valid for Text Controls.
NoPrefix  YesNoType  This attribute is only valid for Text Controls.
NoWrap  YesNoType  This attribute is only valid for Text Controls.
FormatSize  YesNoType  This attribute is only valid for Text Controls.
UserLanguage  YesNoType  This attribute is only valid for Text Controls.
Multiline  YesNoType  This attribute is only valid for Edit Controls.
Password  YesNoType  This attribute is only valid for Edit Controls.
ProgressBlocks  YesNoType  This attribute is only valid for ProgressBar Controls.
Removable  YesNoType  This attribute is only valid for Volume and Directory Controls.
Fixed  YesNoType  This attribute is only valid for Volume and Directory Controls.
Remote  YesNoType  This attribute is only valid for Volume and Directory Controls.
CDROM  YesNoType  This attribute is only valid for Volume and Directory Controls.
RAMDisk  YesNoType  This attribute is only valid for Volume and Directory Controls.
Floppy  YesNoType  This attribute is only valid for Volume and Directory Controls.
ShowRollbackCost  YesNoType  This attribute is only valid for VolumeCostList Controls.
Sorted  YesNoType  This attribute is only valid for Listbox, ListView, and ComboBox Controls.
ComboList  YesNoType  This attribute is only valid for ComboBox Controls.
Image  YesNoType  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
IconSize  NMTOKEN (restriction)  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
FixedSize  YesNoType  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
Icon  YesNoType  This attribute is only valid for RadioButton and PushButton Controls.
Bitmap  YesNoType  This attribute is only valid for RadioButton and PushButton Controls.
PushLike  YesNoType  This attribute is only valid for RadioButton and Checkbox Controls.
HasBorder  YesNoType  This attribute is only valid for RadioButton Controls.
ElevationShield  YesNoType  This attribute is only valid for PushButton controls.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Text  string (extension)  An alternative to using the Text attribute when the value contains special XML characters like <, >, or &.
ComboBox  anyType (restriction)  Set of items for a particular ComboBox control tied to an install Property
ListBox  anyType (restriction)  Set of items for a particular ListBox control tied to an install Property
ListView  anyType (restriction)  Set of items for a particular ListView control tied to an install Property
RadioButtonGroup  anyType (restriction)  Set of radio buttons tied to the specified Property
Property  anyType (restriction)  Property value for a Product or Module.
Binary  anyType (restriction)  Binary data used for CustomAction elements and UI controls.
Condition  string (extension)  Conditions for components, controls, features, and products.
Publish  string (extension)   
Subscribe  anyType (restriction)  Sets attributes for events in the EventMapping table

Element: CopyFile

Description

Copy or move an existing file on the target machine, or copy a file that is being installed, to another destination.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
FileId  string  This attribute cannot be specified if the element is nested under a File element.
SourceDirectory  string  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
SourceProperty  string  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
SourceName  WildCardLongFileNameType  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
DestinationDirectory  string  Set this value to the destination directory where an existing file on the target machine should be moved or copied to.
DestinationProperty  string  Set this value to a property that will have a value that resolves to the full path of the destination directory.
DestinationName  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short file name.
DestinationLongName  LongFileNameType   
DestinationShortName  ShortFileNameType  The short file name of the file in 8.3 format.
Delete  YesNoType  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.

Content Model

Always empty.

Remarks

When this element is nested under a File element, the parent file will be installed, then copied to the specified destination if the parent component of the file is selected for installation or removal. When this element is nested under a Component element and no FileId attribute is specified, the file to copy or move must already be on the target machine.

When this element is nested under a Component element and the FileId attribute is specified, the specified file is installed, then copied to the specified destination if the parent component is selected for installation or removal (use this option to control the copy of a file in a different component by the parent component's installation state). If the specified destination directory is the same as the directory containing the original file and the name for the proposed source file is the same as the original, then no action takes place.

Element: CostFinalize

Description

Ends the internal installation costing process begun by the CostInitialize action.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Any standard or custom actions that affect costing should be sequenced before the CostInitialize action. Call the FileCost action immediately following the CostInitialize action and then call the CostFinalize action to make all final cost calculations available to the installer through the Component table. The CostFinalize action must be executed before starting any user interface sequence which allows the user to view or modify Feature table selections or directories. The CostFinalize action queries the Condition table to determine which features are scheduled to be installed. Costing is done for each component in the Component table. The CostFinalize action also verifies that all the target directories are writable before allowing the installation to continue. The condition for this action may be specified in the element's inner text.

Element: CostInitialize

Description

Initiates the internal installation costing process.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Any standard or custom actions that affect costing should be sequenced before the CostInitialize action. Call the FileCost action immediately following the CostInitialize action. Then call the CostFinalize action following the CostInitialize action to make all final cost calculations available to the installer through the Component table. The condition for this action may be specified in the element's inner text.

Element: CreateFolder

Description

Create folder as part of parent Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Directory  string  Identifier of Directory to create.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Permission  anyType (restriction)  Sets ACLs on File, Registry, or CreateFolder.
Shortcut  anyType (restriction)  Shortcut, default target is parent File, CreateFolder, or Component's Directory

Element: CreateFolders

Description

Creates empty folders for components that are set to be installed.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: CreateShortcuts

Description

Manages the creation of shortcuts.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Custom

Description

Use to sequence a custom action.

Derived By

Extending string

Attributes

Name  Type  Description 
Action  string  The action to which the Custom element applies.
OnExit  NMTOKEN (restriction)  Mutually exclusive with Before, After, and Sequence attributes
Before  string  The name of the standard or custom action before which this action should be performed. Mutually exclusive with OnExit, After, and Sequence attributes
After  string  The name of the standard or custom action after which this action should be performed.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  The sequence number for this action.

Content Model

Contains text only.

Element: CustomAction

Description

Specifies a custom action to be added to the MSI CustomAction table.

Derived By

Extending string

Attributes

Name  Type  Description 
Id  string  The identifier of the custom action.
BinaryKey  string  This attribute is a reference to a Binary element with matching Id attribute.
FileKey  string  This attribute specifies a reference to a File element with matching Id attribute that will execute the custom action code in the file after the file is installed.
Property  string  This attribute specifies a reference to a Property element with matching Id attribute that specifies the Property to be used or updated on execution of this custom action.
Directory  string  This attribute specifies a reference to a Directory element with matching Id attribute containing a directory path.

DllEntry  string  This attribute specifies the name of a function in a custom action to execute.

ExeCommand  string  This attribute specifies the command line parameters to supply to an externally run executable.
JScriptCall  string  This attribute specifies the name of the JScript function to execute in a script.
VBScriptCall  string  This attribute specifies the name of the VBScript Subroutine to execute in a script.
Script  NMTOKEN (restriction)  Creates a type 37 or 38 custom action.
SuppressModularization  YesNoType  Use to suppress modularization of this custom action name in merge modules.
Value  string  This attribute specifies a string value to use in the custom action.
Error  string  This attribute specifies an index in the MSI Error table to use as an error message for a type 19 custom action that displays the error message and aborts a product's installation.
Return  NMTOKEN (restriction)  Set this attribute to set the return behavior of the custom action.
Execute  NMTOKEN (restriction)  This attribute indicates the scheduling of the custom action.
Impersonate  YesNoType  This attribute specifies whether the Windows Installer, which executes as LocalSystem, should impersonate the user context of the installing user when executing this custom action.
PatchUninstall  YesNoType  This attribute specifies that the Windows Installer, execute the custom action only when a patch is being uninstalled.
Win64  YesNoType  Specifies that a script custom action targets a 64-bit platform.
TerminalServerAware  YesNoType  This attribute specifies controls whether the custom action will impersonate the installing user during per-machine installs on Terminal Server machines.

HideTarget  YesNoType  Ensures the installer does not log the CustomActionData for the deferred custom action.

Content Model

Contains text only.

Remarks

Various combinations of the attributes for this element correspond to different custom action types. For more information about custom actions see the Custom Action Types topic on MSDN.

Element: CustomActionRef

Description

This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the CustomAction to reference.

Content Model

Always empty.

Element: CustomProperty

Description

A custom property for the PatchMetadata table.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Company  string  The name of the company.
Property  string  The name of the metadata property.
Value  string  Value of the metadata property.

Content Model

Always empty.

Element: CustomTable

Description

Defines a custom table for use from a custom action.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the custom table.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Column  anyType (restriction)  Column definition for a Custom Table
Row  anyType (restriction)  Row data for a Custom Table

Element: Data

Description

Used for a Custom Table. Specifies the data for the parent Row and specified Column.

Derived By

Extending string

Attributes

Name  Type  Description 
Column  string  Specifies in which column to insert this data.

Content Model

Contains text only.

Element: DeleteServices

Description

Stops a service and removes its registration from the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Dependency

Description

Declares a dependency on another merge module.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
RequiredId  string  Identifier of the merge module required by the merge module.
RequiredLanguage  integer  Numeric language ID of the merge module in RequiredID.
RequiredVersion  string  Version of the merge module in RequiredID.

Content Model

Always empty.

Element: Dialog

Description

Defines a dialog box in the Dialog Table.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for the dialog.
X  integer  Horizontal placement of the dialog box as a percentage of screen width.
Y  integer  Vertical placement of the dialog box as a percentage of screen height.
Width  integer  The width of the dialog box in dialog units.
Height  integer  The height of the dialog box in dialog units.
Title  string  The title of the dialog box.
Hidden  YesNoType  Used to hide the dialog.
Modeless  YesNoType  Used to set the dialog as modeless.
NoMinimize  YesNoType  Used to specify if the dialog can be minimized.
SystemModal  YesNoType  Used to set the dialog as system modal.
KeepModeless  YesNoType  Keep modeless dialogs alive when this dialog is created through DoAction.
TrackDiskSpace  YesNoType  Have the dialog periodically call the installer to check if available disk space has changed.
CustomPalette  YesNoType  Used to specify if pictures in the dialog box are rendered with a custom palette.
RightToLeft  YesNoType  Used to specify if the text in the dialog should be displayed in right to left reading order.
RightAligned  YesNoType  Align text on the right.
LeftScroll  YesNoType  Used to align the scroll bar on the left.
ErrorDialog  YesNoType  Specifies this dialog as an error dialog.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Control  anyType (restriction)  Contains the controls that appear on each dialog.

Element: DialogRef

Description

Reference to a Dialog.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Dialog to reference.

Content Model

Always empty.

Remarks

This will cause the entire referenced section's contents
to be included in the installer database.

Element: DigitalCertificate

Description

Adds a digital certificate.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for a certificate file.
SourceFile  string  The path to the certificate file.

Content Model

Always empty.

Element: DigitalSignature

Description

Adds a digital signature.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
SourceFile  string  The path to signature's optional hash file.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DigitalCertificate  anyType (restriction)  Adds a digital certificate.

Element: Directory

Description

Directory layout for the product.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  This value is the unique identifier of the directory entry.
ComponentGuidGenerationSeed  Guid  The Component Guid Generation Seed is a guid that must be used when a Component with the generate guid directive ("*") is not rooted in a standard Windows Installer directory (for example, ProgramFilesFolder or CommonFilesFolder, etc).
DiskId  integer  Sets the default disk identifier for the files contained in this directory.
FileSource  string  Used to set the file system source for this directory's child elements.
LongName  LongFileNameType   
LongSource  LongFileNameType   
Name  LongFileNameType  The name of the directory.
ShortName  ShortFileNameType  The short name of the directory in 8.3 format.
ShortSourceName  ShortFileNameType  The short name of the directory on the source media in 8.3 format.
SourceName  LongFileNameType  The name of the directory on the source media.
src  string   

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
Directory  anyType (restriction)  Directory layout for the product.
Merge  anyType (restriction)  Merge directive to bring in a merge module that will be redirected to the parent directory.
SymbolPath  anyType (restriction)  A path to symbols.

Remarks

Also specifies the mappings between source and target directories.

Element: DirectoryRef

Description

Create a reference to a Directory element in another Fragment.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Directory element to reference.
DiskId  integer  Sets the default disk identifier for the files contained in this directory.
FileSource  string  Used to set the file system source for this directory ref's child elements.
src  string   

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
Directory  anyType (restriction)  Directory layout for the product.
Merge  anyType (restriction)  Merge directive to bring in a merge module that will be redirected to the parent directory.

Element: DirectorySearch

Description

Searches for directory and assigns to value of parent Property.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for the directory search.
Path  string  Path on the user's system. Either absolute, or relative to containing directories.
Depth  integer  Depth below the path that the installer searches for the file or directory specified by the search.
AssignToProperty  YesNoType  Set the result of this search to the value of the outer Property.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.
FileSearch  anyType (restriction)  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  anyType (restriction)  References an existing FileSearch element.

Element: DirectorySearchRef

Description

References an existing DirectorySearch element.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Id of the search being referred to.
Parent  string  This attribute is the signature of the parent directory of the file or directory in the Signature_ column.
Path  string  Path on the user's system. Either absolute, or relative to containing directories.
AssignToProperty  YesNoType  Set the result of this search to the value of the outer Property.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.
FileSearch  anyType (restriction)  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  anyType (restriction)  References an existing FileSearch element.

Element: DisableRollback

Description

Disables rollback for the remainder of the installation.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: DuplicateFiles

Description

Duplicates files installed by the InstallFiles action.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: EmbeddedChainer

Derived By

Extending string

Attributes

Name  Type  Description 
Id  string  Unique identifier for embedded chainer.
CommandLine  string  Value to append to the transaction handle and passed to the chainer executable.
BinarySource  string  Reference to the Binary element that contains the chainer executeable.
FileSource  string  Reference to the File element that is the chainer executeable.
PropertySource  string  Reference to a Property that resolves to the full path to the chainer executeable.

Content Model

Contains text only.

Element: EmbeddedChainerRef

Description

Reference to an EmbeddedChainer element.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   

Content Model

Always empty.

Remarks

This will force the entire referenced Fragment's contents to be included in the installer database.

Element: EmbeddedUI

Description

Element value is the condition.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for embedded UI.
IgnoreFatalExit  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_FATALEXIT messages.
IgnoreError  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_ERROR messages.
IgnoreWarning  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_WARNING messages.
IgnoreUser  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_USER messages.
IgnoreInfo  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_INFO messages.
IgnoreFilesInUse  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_FILESINUSE messages.
IgnoreResolveSource  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_RESOLVESOURCE messages.
IgnoreOutOfDiskSpace  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_OUTOFDISKSPACE messages.
IgnoreActionStart  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_ACTIONSTART messages.
IgnoreActionData  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_ACTIONDATA messages.
IgnoreProgress  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_PROGRESS messages.
IgnoreCommonData  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_COMMONDATA messages.
IgnoreInitialize  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_INITIALIZE messages.
IgnoreTerminate  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_TERMINATE messages.
IgnoreShowDialog  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_SHOWDIALOG messages.
IgnoreRMFilesInUse  YesNoType  Embedded UI will not recieve any INSTALLLOGMODE_RMFILESINUSE messages.
Name  LongFileNameType  The name for the embedded UI DLL when it is extracted from the Product and executed. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)
SourceFile  string  Path to the binary file that is the embedded UI.
SupportBasicUI  YesNoType  Set yes to allow the Windows Installer to display the embedded UI during basic UI level installation.

Content Model

Can contain a mix of text and the elements defined in the following table.

Component  Type  Description 
EmbeddedUIResource  anyType (restriction)  Defines a resource for use by the embedded UI.

Remarks

Use CDATA if message contains delimiter characters.

Element: EmbeddedUIResource

Description

Defines a resource for use by the embedded UI.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the embedded UI resource.
Name  LongFileNameType  The name for the resource when it is extracted from the Product for use by the embedded UI DLL. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)
SourceFile  string  Path to the binary file that is the embedded UI resource.

Content Model

Always empty.

Element: EnsureTable

Description

Use this element to ensure that a table appears in the installer database, even if its empty.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The name of the table.

Content Model

Always empty.

Element: Environment

Description

Environment variables added or removed for the parent component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for environment entry.
Name  string  Name of the environment variable.
Value  string  The value to set into the environment variable.
Separator  string  Optional attribute to change the separator used between values.
Action  NMTOKEN (restriction)  Specfies whether the environmental variable should be created, set or removed when the parent component is installed.
Part  NMTOKEN (restriction)   
Permanent  YesNoType  Specifies that the environment variable should not be removed on uninstall.
System  YesNoType  Specifies that the environment variable should be added to the system environment space.

Content Model

Always empty.

Element: Error

Derived By

Extending string

Attributes

Name  Type  Description 
Id  integer  Number of the error for which a message is being provided.

Content Model

Contains text only.

Element: Exclusion

Description

Declares a merge module with which this merge module is incompatible.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
ExcludedId  string  Identifier of the merge module that is incompatible.
ExcludeExceptLanguage  integer  Numeric language ID of the merge module in ExcludedID.
ExcludeLanguage  integer  Numeric language ID of the merge module in ExcludedID.
ExcludedMinVersion  string  Minimum version excluded from a range.
ExcludedMaxVersion  string  Maximum version excluded from a range.

Content Model

Always empty.

Element: ExecuteAction

Description

Initiates the execution sequence.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Extension

Description

Extension for a Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  This is simply the file extension, like "doc" or "xml". Do not include the preceding period.
ContentType  string  The MIME type that is to be written.
Advertise  YesNoType  Whether this extension is to be advertised. The default is "no".

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
MIME  anyType (restriction)  MIME content-type for an Extension
Verb  anyType (restriction)  Verb definition for an Extension.

Element: ExternalFile

Description

Contains information about specific files that are not part of a regular target image.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
File  string  Foreign key into the File table.
Source  string  Full path of the external file.
src  string   
Order  int  Specifies the order of the external files to use when creating the patch.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ProtectRange  anyType (restriction)  Specifies part of a file that cannot be overwritten during patching.
SymbolPath  anyType (restriction)  A path to symbols.
IgnoreRange  anyType (restriction)  Specifies part of a file that is to be ignored during patching.

Element: Family

Description

Group of one or more upgraded images of a product.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
DiskId  int  Entered into the DiskId field of the new Media table record.
DiskPrompt  string  Value to display in the "[1]" of the DiskPrompt Property.
MediaSrcProp  string  Entered into the Source field of the new Media table entry of the upgraded image.
Name  string  Identifier for the family.
SequenceStart  int  Sequence number for the starting file.
VolumeLabel  string  Entered into the VolumeLabel field of the new Media table record.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
UpgradeImage  anyType (restriction)  Contains information about the upgraded images of the product.
ExternalFile  anyType (restriction)  Contains information about specific files that are not part of a regular target image.
ProtectFile  anyType (restriction)  Specifies a file to be protected.

Element: Feature

Description

A feature for the Feature table.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier of the feature.
Absent  NMTOKEN (restriction)  This attribute determines if a user will have the option to set a feature to absent in the user interface.
AllowAdvertise  NMTOKEN (restriction)  This attribute determins the possible advertise states for this feature.
ConfigurableDirectory  string  Specify the Id of a Directory that can be configured by the user at installation time.
Description  string  Longer string of text describing the feature.
Display  string  Determines the initial display of this feature in the feature tree.

InstallDefault  NMTOKEN (restriction)  This attribute determines the default install/run location of a feature.
Level  integer  Sets the install level of this feature.
Title  string  Short string of text identifying the feature.
TypicalDefault  NMTOKEN (restriction)  This attribute determines the default advertise state of the feature.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
ComponentGroupRef  anyType (restriction)  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Condition  string (extension)  Conditions for components, controls, features, and products.
Feature  anyType (restriction)  A feature for the Feature table.
FeatureGroupRef  anyType (restriction)  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
MergeRef  anyType (restriction)  Merge reference to connect a Merge Module to parent Feature

Remarks

Features are the smallest installable unit. See msi.chm for more detailed information on the myriad installation options for a feature.

Element: FeatureGroup

Description

Groups together multiple components, features, and merges to be used in other locations.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the FeatureGroup.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
ComponentGroupRef  anyType (restriction)  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Feature  anyType (restriction)  A feature for the Feature table.
FeatureGroupRef  anyType (restriction)  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
MergeRef  anyType (restriction)  Merge reference to connect a Merge Module to parent Feature

Element: FeatureGroupRef

Description

Create a reference to a FeatureGroup in another Fragment.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the FeatureGroup to reference.
IgnoreParent  YesNoType  Normally feature group references that end up nested under a parent element create a connection to that parent.
Primary  YesNoType  Set this attribute to 'yes' in order to make the parent feature of this group the primary feature for any components and merges contained in the group.

Content Model

Always empty.

Element: FeatureRef

Description

Create a reference to a Feature element in another Fragment.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Feature element to reference.
IgnoreParent  YesNoType  Normally feature references that are nested under a parent element create a connection to that parent.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Component  anyType (restriction)  Component for parent Directory
ComponentGroupRef  anyType (restriction)  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Feature  anyType (restriction)  A feature for the Feature table.
FeatureGroup  anyType (restriction)  Groups together multiple components, features, and merges to be used in other locations.
FeatureGroupRef  anyType (restriction)  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
MergeRef  anyType (restriction)  Merge reference to connect a Merge Module to parent Feature

Element: File

Description

File specification for File table, must be child node of Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The unique identifier for this File element.
CompanionFile  string  Set this attribute to make this file a companion child of another file.
Name  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.
LongName  LongFileNameType   
KeyPath  YesNoType  Set to yes in order to force this file to be the key path for the parent component.
ShortName  ShortFileNameType  The short file name of the file in 8.3 format.
ReadOnly  YesNoType  Set to yes in order to have the file's read-only attribute set when it is installed on the target machine.
Hidden  YesNoType  Set to yes in order to have the file's hidden attribute set when it is installed on the target machine.
System  YesNoType  Set to yes in order to have the file's system attribute set when it is installed on the target machine.
Vital  YesNoType  If a file is vital, then installation cannot proceed unless the file is successfully installed.
Checksum  YesNoType  This attribute should be set to "yes" for every executable file in the installation that has a valid checksum stored in the Portable Executable (PE) file header.
Compressed  YesNoDefaultType  Sets the file's source type compression.
BindPath  string  A list of paths, separated by semicolons, that represent the paths to be searched to find the imported DLLs.
SelfRegCost  integer  The cost of registering the file in bytes.
TrueType  YesNoType  Causes an entry to be generated for the file in the Font table with no FontTitle specified.
FontTitle  string  Causes an entry to be generated for the file in the Font table with the specified FontTitle.
DefaultLanguage  string  This is the default language of this file.
DefaultSize  integer  This is the default size of this file.
DefaultVersion  string  This is the default version of this file.
Assembly  NMTOKEN (restriction)  Specifies if this File is a Win32 Assembly or .NET Assembly that needs to be installed into the Global Assembly Cache.
AssemblyManifest  string  Specifies the file identifier of the manifest file that describes this assembly.
AssemblyApplication  string  Specifies the file identifier of the application file.
ProcessorArchitecture  NMTOKEN (restriction)  Specifies the architecture for this assembly.
DiskId  integer  Specifies the Media this File should be sourced on.
Source  string  Specifies the path to the File in the build process.
src  string   
PatchGroup  integer  This attribute must be set for patch-added files.
PatchIgnore  YesNoType  Prevents the updating of the file that is in fact changed in the upgraded image relative to the target images.
PatchAllowIgnoreOnError  YesNoType  Set to indicate that the patch is non-vital.
PatchWholeFile  YesNoType  Set if the entire file should be installed rather than creating a binary patch.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

AssemblyName  anyType (restriction)  The MsiAssemblyName table specifies the schema for the elements of a strong assembly cache name for a .NET Framework or Win32 assembly.

Class  anyType (restriction)  COM Class registration for parent Component.
CopyFile  anyType (restriction)  Copy or move an existing file on the target machine, or copy a file that is being installed, to another destination.
ODBCDriver  anyType (restriction)  ODBCDriver for a Component
ODBCTranslator  anyType (restriction)  ODBCTranslator for a Component
Permission  anyType (restriction)  Sets ACLs on File, Registry, or CreateFolder.
Shortcut  anyType (restriction)  Shortcut, default target is parent File, CreateFolder, or Component's Directory
SymbolPath  anyType (restriction)  A path to symbols.
TypeLib  anyType (restriction)  Register a type library (TypeLib).

Element: FileCost

Description

Initiates dynamic costing of standard installation actions.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Any standard or custom actions that affect costing should sequenced before the CostInitialize action. Call the FileCost action immediately following the CostInitialize action. Then call the CostFinalize action following the FileCost action to make all final cost calculations available to the installer through the Component table. The CostInitialize action must be executed before the FileCost action. The installer then determines the disk-space cost of every file in the File table, on a per-component basis, taking both volume clustering and the presence of existing files that may need to be overwritten into account. All actions that consume or release disk space are also considered. If an existing file is found, a file version check is performed to determine whether the new file actually needs to be installed or not. If the existing file is of an equal or greater version number, the existing file is not overwritten and no disk-space cost is incurred. In all cases, the installer uses the results of version number checking to set the installation state of each file. The FileCost action initializes cost calculation with the installer. Actual dynamic costing does not occur until the CostFinalize action is executed. The condition for this action may be specified in the element's inner text.

Element: FileSearch

Description

Searches for file and assigns to fullpath value of parent Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for the file search and external key into the Signature table.
Name  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.
LongName  LongFileNameType   
ShortName  ShortFileNameType  The short file name of the file in 8.3 format.
MinSize  int  The minimum size of the file.
MaxSize  int  The maximum size of the file.
MinVersion  string  The minimum version of the file.
MaxVersion  string  The maximum version of the file.
MinDate  dateTime  The minimum modification date and time of the file.
MaxDate  dateTime  The maximum modification date and time of the file.
Languages  string  The languages supported by the file.

Content Model

Always empty.

Element: FileSearchRef

Description

References an existing FileSearch element.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Specify the Id to the FileSearch to reference.

Content Model

Always empty.

Element: FileTypeMask

Description

FileType data for class Id registration.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Offset  integer  Offset into file. If positive, offset is from the beginning; if negative, offset is from the end.
Mask  HexType  Hex value that is AND'd against the bytes in the file at Offset.
Value  HexType  If the result of the AND'ing of Mask with the bytes in the file is Value, the file is a match for this File Type.

Content Model

Always empty.

Element: FindRelatedProducts

Description

Runs through each record of the Upgrade table in sequence and compares the upgrade code, product version, and language in each row to products installed on the system.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

When FindRelatedProducts detects a correspondence between the upgrade information and an installed product, it appends the product code to the property specified in the ActionProperty column of the UpgradeTable. The FindRelatedProducts action only runs the first time the product is installed. The FindRelatedProducts action does not run during maintenance mode or uninstallation. FindRelatedProducts should be authored into the InstallUISequence table and InstallExecuteSequence tables. The installer prevents FindRelated Products from running in InstallExecuteSequence if the action has already run in InstallUISequence. The FindRelatedProducts action must come before the MigrateFeatureStates action and the RemoveExistingProducts action. The condition for this action may be specified in the element's inner text.

Element: ForceReboot

Description

Prompts the user for a restart of the system during the installation.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: Fragment

Description

The Fragment element is the building block of creating an installer database in WiX.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Optional identifier for a Fragment.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

Binary  anyType (restriction)  Binary data used for CustomAction elements and UI controls.
ComplianceCheck  anyType (restriction)  Adds a row to the CCPSearch table.
Component  anyType (restriction)  Component for parent Directory
ComponentGroup  anyType (restriction)  Groups together multiple components to be used in other locations.
Condition  string (extension)  Conditions for components, controls, features, and products.
CustomAction  string (extension)  Specifies a custom action to be added to the MSI CustomAction table.
CustomActionRef  anyType (restriction)  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
CustomTable  anyType (restriction)  Defines a custom table for use from a custom action.
Directory  anyType (restriction)  Directory layout for the product.
DirectoryRef  anyType (restriction)  Create a reference to a Directory element in another Fragment.
EmbeddedChainer  string (extension)   
EmbeddedChainerRef  anyType (restriction)  Reference to an EmbeddedChainer element.
EnsureTable  anyType (restriction)  Use this element to ensure that a table appears in the installer database, even if its empty.
Feature  anyType (restriction)  A feature for the Feature table.
FeatureGroup  anyType (restriction)  Groups together multiple components, features, and merges to be used in other locations.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Icon  anyType (restriction)  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)
IgnoreModularization  anyType (restriction)  This element has been deprecated.
Media  anyType (restriction)  Media element describes a disk that makes up the source media for the installation.
PatchCertificates  anyType (restriction)  Identifies the possible signer certificates used to digitally sign patches.
PatchFamily  anyType (restriction)  Collection of items that should be kept from the differences between two products.
Property  anyType (restriction)  Property value for a Product or Module.
PropertyRef  anyType (restriction)  Reference to a Property value.
InstallExecuteSequence  anyType (restriction)   
InstallUISequence  anyType (restriction)   
AdminExecuteSequence  anyType (restriction)   
AdminUISequence  anyType (restriction)   
AdvertiseExecuteSequence  anyType (restriction)   
SetDirectory  string (extension)  Sets a Directory to a particular value.
SetProperty  string (extension)  Sets a Property to a particular value.
SFPCatalog  anyType (restriction)  Adds a system file protection update catalog file
UI  anyType (restriction)  Enclosing element to compartmentalize UI specifications.
UIRef  anyType (restriction)  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
Upgrade  anyType (restriction)  Upgrade info for a particular UpgradeCode
WixVariable  anyType (restriction)  This element exposes advanced WiX functionality.

Remarks

Once defined, the Fragment becomes an immutable, atomic unit which can either be completely included or excluded from a product. The contents of a Fragment element can be linked into a product by utilizing one of the many *Ref elements. When linking in a Fragment, it will be necessary to link in all of its individual units. For instance, if a given Fragment contains two Component elements, you must link both under features using ComponentRef for each linked Component. Otherwise, you will get a linker warning and have a floating Component that does not appear under any Feature.

Element: Icon

Description

Icon used for Shortcut, ProgId, or Class elements (but not UI controls)

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The Id cannot by longer than 55 characters.
SourceFile  string  Path to the icon file.
src  string   

Content Model

Always empty.

Element: IconRef

Description

Used only for PatchFamilies to include only a icon table entry in a patch.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the Icon element to reference.

Content Model

Always empty.

Element: IgnoreModularization

Description

This element has been deprecated.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Name  string  The name of the item to ignore modularization for.
Type  NMTOKEN (restriction)  The type of the item to ignore modularization for.

Content Model

Always empty.

Remarks

Use the Binary/@SuppressModularization, CustomAction/@SuppressModularization, or Property/@SuppressModularization attributes instead.

Element: IgnoreRange

Description

Specifies part of a file that is to be ignored during patching.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Offset  int  Offset of the start of the range.
Length  int  Length of the range.

Content Model

Always empty.

Element: IgnoreTable

Description

Specifies a table from the merge module that is not merged into an .msi file.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The name of the table in the merge module that is not to be merged into the .msi file.

Content Model

Always empty.

Remarks

If the table already exists in an .msi file, it is not modified by the merge. The specified table can therefore contain data that is unneeded after the merge. To minimize the size of the .msm file, it is recommended that developers remove unused tables from modules intended for redistribution rather than creating IgnoreTable elements for those tables.

Element: Include

Description

This is the top-level container element for every wxi file.

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##any namespace.

Element: IniFile

Description

Adds or removes .ini file entries.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for ini file.
Action  NMTOKEN (restriction)  The type of modification to be made.
Directory  string  Name of a property, the value of which is the full path of the folder containing the .ini file.
Key  string  The localizable .ini file key within the section.
LongName  LongFileNameType   
Name  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
Section  string  The localizable .ini file section.
ShortName  ShortFileNameType  The short name of the in 8.3 format.
Value  string  The localizable value to be written or deleted. This attribute must be set if the Action attribute's value is "addLine", "addTag", or "createLine".

Content Model

Always empty.

Element: IniFileSearch

Description

Searches for file, directory or registry key and assigns to value of parent Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  External key into the Signature table.
Field  integer  The field in the .ini line. If field is Null or 0, the entire line is read.
Key  string  The key value within the section.
LongName  LongFileNameType   
Name  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
Section  string  The localizable .ini file section.
ShortName  ShortFileNameType  The short name of the file in 8.3 format.
Type  NMTOKEN (restriction)  Must be file if last child is FileSearch element and must be directory if last child is DirectorySearch element.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.
FileSearch  anyType (restriction)  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  anyType (restriction)  References an existing FileSearch element.

Element: InstallAdminPackage

Description

Copies the product database to the administrative installation point. The condition for this action may be specified in the element's inner text.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Element: InstallExecute

Description

Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: InstallExecuteAgain

Description

Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Should only be used after InstallExecute. Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: InstallExecuteSequence

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
AllocateRegistrySpace  ActionSequenceType  Ensures the needed amount of space exists in the registry.
AppSearch  ActionModuleSequenceType  Uses file signatures to search for existing versions of products.
BindImage  ActionSequenceType  Binds each executable or DLL that must be bound to the DLLs imported by it.
CCPSearch  ActionModuleSequenceType  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
CostFinalize  ActionSequenceType  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  ActionSequenceType  Initiates the internal installation costing process.
CreateFolders  ActionSequenceType  Creates empty folders for components that are set to be installed.
CreateShortcuts  ActionSequenceType  Manages the creation of shortcuts.
Custom  string (extension)  Use to sequence a custom action.
DeleteServices  ActionSequenceType  Stops a service and removes its registration from the system.
DisableRollback  ActionModuleSequenceType  Disables rollback for the remainder of the installation.
DuplicateFiles  ActionSequenceType  Duplicates files installed by the InstallFiles action.
FileCost  ActionSequenceType  Initiates dynamic costing of standard installation actions.
FindRelatedProducts  ActionModuleSequenceType  Runs through each record of the Upgrade table in sequence and compares the upgrade code, product version, and language in each row to products installed on the system.
ForceReboot  ActionModuleSequenceType  Prompts the user for a restart of the system during the installation.
InstallExecute  ActionModuleSequenceType  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallExecuteAgain  ActionModuleSequenceType  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallFiles  ActionSequenceType  Copies files specified in the File table from the source directory to the destination directory.
InstallFinalize  ActionSequenceType  Marks the end of a sequence of actions that change the system.
InstallInitialize  ActionSequenceType  Marks the beginning of a sequence of actions that change the system.
InstallODBC  ActionSequenceType  Installs the drivers, translators, and data sources in the ODBCDriver table, ODBCTranslator table, and ODBCDataSource table.
InstallServices  ActionSequenceType  Registers a service for the system.
InstallValidate  ActionSequenceType  Verifies that all costed volumes have enough space for the installation.
IsolateComponents  ActionSequenceType  Installs a copy of a component (commonly a shared DLL) into a private location for use by a specific application (typically an .exe).
LaunchConditions  ActionModuleSequenceType  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
MigrateFeatureStates  ActionSequenceType  Used for upgrading or installing over an existing application.
MoveFiles  ActionSequenceType  Locates existing files on the system and moves or copies those files to a new location.
MsiPublishAssemblies  ActionSequenceType  Manages the advertisement of CLR and Win32 assemblies.
MsiUnpublishAssemblies  ActionSequenceType  Manages the unadvertisement of CLR and Win32 assemblies that are being removed.
PatchFiles  ActionSequenceType  Queries the Patch table to determine which patches are to be applied.
ProcessComponents  ActionSequenceType  Registers and unregisters components, their key paths, and the component clients.
PublishComponents  ActionSequenceType  Manages the advertisement of the components from the PublishComponent table.
PublishFeatures  ActionSequenceType  Writes each feature's state into the system registry.
PublishProduct  ActionSequenceType  Manages the advertisement of the product information with the system.
RegisterClassInfo  ActionSequenceType  Manages the registration of COM class information with the system.
RegisterComPlus  ActionSequenceType  Registers COM+ applications.
RegisterExtensionInfo  ActionSequenceType  Manages the registration of extension related information with the system.
RegisterFonts  ActionSequenceType  Registers installed fonts with the system.
RegisterMIMEInfo  ActionSequenceType  Registers MIME-related registry information with the system.
RegisterProduct  ActionSequenceType  Registers the product information with the installer.
RegisterProgIdInfo  ActionSequenceType  Manages the registration of OLE ProgId information with the system.
RegisterTypeLibraries  ActionSequenceType  Registers type libraries with the system.
RegisterUser  ActionSequenceType  Registers the user information with the installer to identify the user of a product.
RemoveDuplicateFiles  ActionSequenceType  Deletes files installed by the DuplicateFiles action.
RemoveEnvironmentStrings  ActionSequenceType  Modifies the values of environment variables.
RemoveExistingProducts  ActionModuleSequenceType  Goes through the product codes listed in the ActionProperty column of the Upgrade table and removes the products in sequence.
RemoveFiles  ActionSequenceType  Removes files previously installed by the InstallFiles action.
RemoveFolders  ActionSequenceType  Removes any folders linked to components set to be removed or run from source.
RemoveIniValues  ActionSequenceType  Removes .ini file information specified for removal in the RemoveIniFile table if the component is set to be installed locally or run from source.
RemoveODBC  ActionSequenceType  Removes the data sources, translators, and drivers listed for removal during the installation.
RemoveRegistryValues  ActionSequenceType  Removes a registry value that has been authored into the registry table if the associated component was installed locally or as run from source, and is now set to be uninstalled.
RemoveShortcuts  ActionSequenceType  Manages the removal of an advertised shortcut whose feature is selected for uninstallation or a nonadvertised shortcut whose component is selected for uninstallation.
ResolveSource  ActionModuleSequenceType  Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.
RMCCPSearch  ActionModuleSequenceType  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
ScheduleReboot  ActionModuleSequenceType  Prompts the user to restart the system at the end of installation.
SelfRegModules  ActionSequenceType  Processes all modules listed in the SelfReg table and registers all installed modules with the system.
SelfUnregModules  ActionSequenceType  Unregisters all modules listed in the SelfReg table that are scheduled to be uninstalled.
SetODBCFolders  ActionSequenceType  Checks for existing ODBC drivers and sets the target directory for each new driver to the location of an existing driver.
StartServices  ActionSequenceType  Starts system services.
StopServices  ActionSequenceType  Stops system services.
UnpublishComponents  ActionSequenceType  Manages the unadvertisement of components listed in the PublishComponent table.
UnpublishFeatures  ActionSequenceType  Removes selection-state and feature-component mapping information from the registry.
UnregisterClassInfo  ActionSequenceType  Manages the removal of COM class information from the system registry.
UnregisterComPlus  ActionSequenceType  Removes COM+ applications from the registry.
UnregisterExtensionInfo  ActionSequenceType  Manages the removal of extension-related information from the system registry.
UnregisterFonts  ActionSequenceType  Removes registration information about installed fonts from the system.
UnregisterMIMEInfo  ActionSequenceType  Unregisters MIME-related registry information from the system.
UnregisterProgIdInfo  ActionSequenceType  Manages the unregistration of OLE ProgId information with the system.
UnregisterTypeLibraries  ActionSequenceType  Unregisters type libraries from the system.
ValidateProductID  ActionSequenceType  Sets the ProductID property to the full product identifier.
WriteEnvironmentStrings  ActionSequenceType  Modifies the values of environment variables.
WriteIniValues  ActionSequenceType  Writes the .ini file information that the application needs written to its .ini files.
WriteRegistryValues  ActionSequenceType  Sets up an application's registry information.

Element: InstallFiles

Description

Copies files specified in the File table from the source directory to the destination directory.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: InstallFinalize

Description

Marks the end of a sequence of actions that change the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: InstallInitialize

Description

Marks the beginning of a sequence of actions that change the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: InstallODBC

Description

Installs the drivers, translators, and data sources in the ODBCDriver table, ODBCTranslator table, and ODBCDataSource table.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: InstallServices

Description

Registers a service for the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: InstallUISequence

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
AppSearch  ActionModuleSequenceType  Uses file signatures to search for existing versions of products.
CCPSearch  ActionModuleSequenceType  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
CostFinalize  ActionSequenceType  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  ActionSequenceType  Initiates the internal installation costing process.
Custom  string (extension)  Use to sequence a custom action.
ExecuteAction  ActionSequenceType  Initiates the execution sequence.
FileCost  ActionSequenceType  Initiates dynamic costing of standard installation actions.
FindRelatedProducts  ActionModuleSequenceType  Runs through each record of the Upgrade table in sequence and compares the upgrade code, product version, and language in each row to products installed on the system.
IsolateComponents  ActionSequenceType  Installs a copy of a component (commonly a shared DLL) into a private location for use by a specific application (typically an .exe).
LaunchConditions  ActionModuleSequenceType  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
MigrateFeatureStates  ActionSequenceType  Used for upgrading or installing over an existing application.
ResolveSource  ActionModuleSequenceType  Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.
RMCCPSearch  ActionModuleSequenceType  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
ScheduleReboot  ActionModuleSequenceType  Prompts the user to restart the system at the end of installation.
Show  string (extension)   
ValidateProductID  ActionSequenceType  Sets the ProductID property to the full product identifier.

Element: InstallValidate

Description

Verifies that all costed volumes have enough space for the installation.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Instance

Description

Defines an instance transform for your product.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identity of the instance transform.
ProductCode  string  The ProductCode for this instance.
ProductName  string  The ProductName for this instance.

Content Model

Always empty.

Element: InstanceTransforms

Description

Use this element to contain definitions for instance transforms.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Property  string  The Id of the Property who's value should change for each instance.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Instance  anyType (restriction)  Defines an instance transform for your product.

Element: Interface

Description

COM Interface registration for parent Typelib.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  GUID identifier for COM Interface.
Name  string  Name for COM Interface.
ProxyStubClassId  Guid  GUID CLSID for proxy stub to COM Interface.
ProxyStubClassId32  Guid  GUID CLSID for 32-bit proxy stub to COM Interface.
NumMethods  integer  Number of methods implemented on COM Interface.
Versioned  YesNoType  Determines whether a Typelib version entry should be created with the other COM Interface registry keys.

Content Model

Always empty.

Element: IsolateComponent

Description

Shared Component to be privately replicated in folder of parent Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Shared  string  Shared Component for this application Component.

Content Model

Always empty.

Element: IsolateComponents

Description

Installs a copy of a component (commonly a shared DLL) into a private location for use by a specific application (typically an .exe).

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

This isolates the application from other copies of the component that may be installed to a shared location on the computer. The action refers to each record of the IsolatedComponent table and associates the files of the component listed in the Component_Shared field with the component listed in the Component_Application field. The installer installs the files of Component_Shared into the same directory as Component_Application. The installer generates a file in this directory, zero bytes in length, having the short filename name of the key file for Component_Application (typically this is the same file name as the .exe) appended with .local. The IsolatedComponent action does not affect the installation of Component_Application. Uninstalling Component_Application also removes the Component_Shared files and the .local file from the directory. The IsolateComponents action can be used only in the InstallUISequence table and the InstallExecuteSequence table. This action must come after the CostInitialize action and before the CostFinalize action. The condition for this action may be specified in the element's inner text.

Element: LaunchConditions

Description

Queries the LaunchCondition table and evaluates each conditional statement recorded there.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

If any of these conditional statements fail, an error message is displayed to the user and the installation is terminated. The LaunchConditions action is optional. This action is normally the first in the sequence, but the AppSearch Action may be sequenced before the LaunchConditions action. If there are launch conditions that do not apply to all installation modes, the appropriate installation mode property should be used in a conditional expression in the appropriate sequence table. The condition for this action may be specified in the element's inner text.

Element: ListBox

Description

Set of items for a particular ListBox control tied to an install Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Property  string  Property tied to this group

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ListItem  anyType (restriction)  The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.

Element: ListItem

Description

The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Value  string  The value assigned to the associated ComboBox, ListBox, or ListView property if this item is selected.
Text  string  The localizable, visible text to be assigned to the item.
Icon  string  The identifier of the Binary (not Icon) element containing the icon to associate with this item.

Content Model

Always empty.

Element: ListView

Description

Set of items for a particular ListView control tied to an install Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Property  string  Property tied to this group

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ListItem  anyType (restriction)  The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.

Element: Media

Description

Media element describes a disk that makes up the source media for the installation.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  integer  Disk identifier for Media table.
Cabinet  string  The name of the cabinet if some or all of the files stored on the media are in a cabinet file.
CompressionLevel  NMTOKEN (restriction)  Indicates the compression level for the Media's cabinet.
DiskPrompt  string  The disk name, which is usually the visible text printed on the disk.
EmbedCab  YesNoType  Instructs the binder to embed the cabinet in the product if 'yes'.
Layout  string  This attribute specifies the root directory for the uncompressed files that are a part of this Media element.
src  string   
VolumeLabel  string  The label attributed to the volume.
Source  string  Optional property that identifies the source of the embedded cabinet.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DigitalSignature  anyType (restriction)  Adds a digital signature.
PatchBaseline  anyType (restriction)  Identifies a set of product versions.
SymbolPath  anyType (restriction)  A path to symbols.

Element: Merge

Description

Merge directive to bring in a merge module that will be redirected to the parent directory.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The unique identifier for the Merge element in the source code.
DiskId  string  The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere.
FileCompression  YesNoType  Specifies if the files in the merge module should be compressed.
Language  LocalizableInteger  Specifies the decimal LCID or localization token for the language to merge the Module in as.
SourceFile  string  Path to the source location of the merge module.
src  string   

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ConfigurationData  anyType (restriction)  Data to use as input to a configurable merge module.

Element: MergeRef

Description

Merge reference to connect a Merge Module to parent Feature

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The unique identifier for the Merge element to be referenced.
Primary  YesNoType  Specifies whether the feature containing this MergeRef is the primary feature for advertising the merge module's components.

Content Model

Always empty.

Element: MigrateFeatureStates

Description

Used for upgrading or installing over an existing application.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Reads feature states from existing application and sets these feature states for the pending installation. The condition for this action may be specified in the element's inner text.

Element: MIME

Description

MIME content-type for an Extension

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Advertise  YesNoType  Whether this MIME is to be advertised.
ContentType  string  This is the identifier for the MIME content.
Class  Guid  Class ID for the COM server that is to be associated with the MIME content.
Default  YesNoType  If 'yes', become the content type for the parent Extension.

Content Model

Always empty.

Element: Module

Description

The Module element is analogous to the main function in a C program.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The name of the merge module (not the file name).
Codepage  string  The code page integer value or web name for the resulting MSM.
Guid  Guid  This attribute is deprecated. Use the Package/@Id instead.
Language  LocalizableInteger  The decimal language ID (LCID) of the merge module.
Version  string  The major and minor versions of the merge module.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Package  anyType (restriction)  Properties about the package to be placed in the Summary Information Stream.
any    Allow any element from the ##other namespace.
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

Binary  anyType (restriction)  Binary data used for CustomAction elements and UI controls.
Component  anyType (restriction)  Component for parent Directory
ComponentGroupRef  anyType (restriction)  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Configuration  anyType (restriction)  Defines the configurable attributes of merge module.
CustomAction  string (extension)  Specifies a custom action to be added to the MSI CustomAction table.
CustomActionRef  anyType (restriction)  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
CustomTable  anyType (restriction)  Defines a custom table for use from a custom action.
Dependency  anyType (restriction)  Declares a dependency on another merge module.
Directory  anyType (restriction)  Directory layout for the product.
DirectoryRef  anyType (restriction)  Create a reference to a Directory element in another Fragment.
EmbeddedChainer  string (extension)   
EmbeddedChainerRef  anyType (restriction)  Reference to an EmbeddedChainer element.
EnsureTable  anyType (restriction)  Use this element to ensure that a table appears in the installer database, even if its empty.
Exclusion  anyType (restriction)  Declares a merge module with which this merge module is incompatible.
Icon  anyType (restriction)  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)
IgnoreModularization  anyType (restriction)  This element has been deprecated.
IgnoreTable  anyType (restriction)  Specifies a table from the merge module that is not merged into an .msi file.

Property  anyType (restriction)  Property value for a Product or Module.
PropertyRef  anyType (restriction)  Reference to a Property value.
InstallExecuteSequence  anyType (restriction)   
InstallUISequence  anyType (restriction)   
AdminExecuteSequence  anyType (restriction)   
AdminUISequence  anyType (restriction)   
AdvertiseExecuteSequence  anyType (restriction)   
SetDirectory  string (extension)  Sets a Directory to a particular value.
SetProperty  string (extension)  Sets a Property to a particular value.
SFPCatalog  anyType (restriction)  Adds a system file protection update catalog file
Substitution  anyType (restriction)  Specifies the configurable fields of a module database and provides a template for the configuration of each field.
UI  anyType (restriction)  Enclosing element to compartmentalize UI specifications.
UIRef  anyType (restriction)  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
WixVariable  anyType (restriction)  This element exposes advanced WiX functionality.

Remarks

When linking, only one Module section can be given to the linker to produce a successful result. Using this element creates an msm file.

Element: MoveFiles

Description

Locates existing files on the system and moves or copies those files to a new location.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: MsiPublishAssemblies

Description

Manages the advertisement of CLR and Win32 assemblies.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: MsiUnpublishAssemblies

Description

Manages the unadvertisement of CLR and Win32 assemblies that are being removed.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: MultiStringValue

Description

Use several of these elements to specify each registry value in a multiString registry value.

Derived By

Type anyType

Content Model

Always empty.

Remarks

This element cannot be used if the Value attribute is specified unless the Type attribute is set to 'multiString'. The values should go in the text area of the MultiStringValue element.

Element: ODBCDataSource

Description

ODBCDataSource for a Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier of the data source.
Name  string  Name for the data source.
DriverName  string  Required if not found as child of ODBCDriver element
Registration  NMTOKEN (restriction)  Scope for which the data source should be registered.
KeyPath  YesNoType  Set 'yes' to force this file to be key path for parent Component

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Property  anyType (restriction)  Property value for a Product or Module.

Element: ODBCDriver

Description

ODBCDriver for a Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the driver.
Name  string  Name for the driver.
File  string  Required if not found as child of File element
SetupFile  string  Required if not found as child of File element or different from File attribute above

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Property  anyType (restriction)  Property value for a Product or Module.
ODBCDataSource  anyType (restriction)  ODBCDataSource for a Component

Element: ODBCTranslator

Description

ODBCTranslator for a Component

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the translator.
Name  string  Name for the translator.
File  string  Required if not found as child of File element
SetupFile  string  Required if not found as child of File element or different from File attribute above

Content Model

Always empty.

Element: OptimizeCustomActions

Description

Indicates whether custom actions can be skipped when applying the patch.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
SkipAssignment  YesNoType  Skip property (type 51) and directory (type 35) assignment custom actions.
SkipImmediate  YesNoType  Skip immediate custom actions that are not property or directory assignment custom actions.
SkipDeferred  YesNoType  Skip custom actions that run within the script.

Content Model

Always empty.

Element: Package

Description

Properties about the package to be placed in the Summary Information Stream.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  AutogenGuid  The package code GUID for a product or merge module.

AdminImage  YesNoType  Set to 'yes' if the source is an admin image.
Comments  string  Optional comments for browsing.
Compressed  YesNoType  Set to 'yes' to have compressed files in the source.
Description  string  The product full name or description.
InstallPrivileges  NMTOKEN (restriction)  Use this attribute to specify the priviliges required to install the package on Windows Vista and above.
InstallScope  NMTOKEN (restriction)  Use this attribute to specify the installation scope of this package: per-machine or per-user.
InstallerVersion  integer  The minimum version of the Windows Installer required to install this package.
Keywords  string  Optional keywords for browsing.
Languages  string  The list of language IDs (LCIDs) supported in the package.
Manufacturer  string  The vendor releasing the package.
Platforms  string   
Platform  NMTOKEN (restriction)  The platform supported by the package.
ReadOnly  YesNoDefaultType  The value of this attribute conveys whether the package should be opened as read-only.
ShortNames  YesNoType  Set to 'yes' to have short filenames in the source.
SummaryCodepage  string  The code page integer value or web name for summary info strings only.

Content Model

Always empty.

Remarks

These are visible from COM through the IStream interface, and these properties can be seen on the package in Explorer.

Element: Patch

Description

The Patch element is analogous to the main function in a C program.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  AutogenGuid  Patch code for this patch.
Codepage  string  The code page integer value or web name for the resulting MSP.
AllowRemoval  YesNoType  Whether this is an uninstallable patch.
Classification  PatchClassificationType  Category of updates.
ClientPatchId  string  An easily referenced identity unique to a patch that can be used in product authoring.
ApiPatchingSymbolNoImagehlpFlag  YesNoType  Flag used when creating a binary file patch.
ApiPatchingSymbolNoFailuresFlag  YesNoType  Flag used when creating a binary file patch.
ApiPatchingSymbolUndecoratedTooFlag  YesNoType  Flag used when creating a binary file patch.
Description  string  Description of the patch.
DisplayName  string  A title for the patch that is suitable for public display.
Manufacturer  string  Vendor releasing the package
MinorUpdateTargetRTM  YesNoType  Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.
MoreInfoURL  string  A URL that provides information specific to this patch.
OptimizedInstallMode  YesNoType  If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.
TargetProductName  string  Name of the application or target product suite.
OptimizePatchSizeForLargeFiles  YesNoType  When this attribute is set, patches for files greater than approximately 4 MB in size may be made smaller.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Media  anyType (restriction)  Media element describes a disk that makes up the source media for the installation.
OptimizeCustomActions  anyType (restriction)  Indicates whether custom actions can be skipped when applying the patch.
PatchFamily  anyType (restriction)  Collection of items that should be kept from the differences between two products.
PatchFamilyRef  anyType (restriction)  This will cause the entire contents of the Fragment containing the referenced PatchFamily to be used in the process of creating a patch.
PatchProperty  anyType (restriction)  A property for this patch database.

Remarks

When linking, only one Patch section can be given to the linker to produce a successful result. Using this element creates an MSP file.

Element: PatchBaseline

Description

Identifies a set of product versions.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for a set of product versions.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Validate  anyType (restriction)  Sets information on the patch transform that determines to which product the transform applies and what errors should be ignored when applying the patch transform.

Element: PatchCertificates

Description

Identifies the possible signer certificates used to digitally sign patches.

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DigitalCertificate  anyType (restriction)  Adds a digital certificate.

Element: PatchCreation

Description

The PatchCreation element is analogous to the main function in a C program.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  PatchCreation identifier; this is the primary key for identifying patches.
AllowMajorVersionMismatches  YesNoType  Use this to set whether the major versions between the upgrade and target images match.
AllowProductCodeMismatches  YesNoType  Use this to set whether the product code between the upgrade and target images match.
CleanWorkingFolder  YesNoType  Use this to set whether Patchwiz should clean the temp folder when finished.
Codepage  string  The code page integer value or web name for the resulting PCP.
OutputPath  string  The full path, including file name, of the patch package file that is to be generated.
SourceList  string  Used to locate the .msp file for the patch if the cached copy is unavailable.
SymbolFlags  int  An 8-digit hex integer representing the combination of patch symbol usage flags to use when creating a binary file patch.
WholeFilesOnly  YesNoType  Use this to set whether changing files should be included in their entirety.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
PatchInformation  anyType (restriction)  Properties about the patch to be placed in the Summary Information Stream.
PatchMetadata  anyType (restriction)  Properties about the patch to be placed in the PatchMetadata table.
Family  anyType (restriction)  Group of one or more upgraded images of a product.
PatchProperty  anyType (restriction)  A property for this patch database.
PatchSequence  anyType (restriction)  Sequence information for this patch database.
ReplacePatch  anyType (restriction)  A patch that is deprecated by this patch.
TargetProductCode  anyType (restriction)  A product code for a product that may receive this patch (or '*' for all products).

Remarks

When linking, only one PatchCreation section can be given to the linker to produce a successful result. Using this element creates a pcp file.

Element: PatchFamily

Description

Collection of items that should be kept from the differences between two products.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier which indicates a sequence family to which this patch belongs.
ProductCode  Guid  Specifies the ProductCode of the product that this family applies to.
Version  string  Used to populate the sequence column of the MsiPatchSequence table in the final MSP file.
Supersede  YesNoType  Set this value to 'yes' to indicate that this patch will supersede all previous patches in this patch family.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
BinaryRef  anyType (restriction)  Used only for PatchFamilies to include only a binary table entry in a patch.
ComponentRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
CustomActionRef  anyType (restriction)  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
DirectoryRef  anyType (restriction)  Create a reference to a Directory element in another Fragment.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
IconRef  anyType (restriction)  Used only for PatchFamilies to include only a icon table entry in a patch.
PropertyRef  anyType (restriction)  Reference to a Property value.
UIRef  anyType (restriction)  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.

Element: PatchFamilyRef

Description

This will cause the entire contents of the Fragment containing the referenced PatchFamily to be used in the process of creating a patch.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The identifier of the CustomAction to reference.

Content Model

Always empty.

Element: PatchFiles

Description

Queries the Patch table to determine which patches are to be applied.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: PatchInformation

Description

Properties about the patch to be placed in the Summary Information Stream.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Description  string  Product full name or description
Platforms  string  List of platforms supported in package
Languages  string  List of language IDs supported in package
Manufacturer  string  Vendor releasing the package
Keywords  string  Optional keywords for browsing
Comments  string  Optional comments for browsing
ReadOnly  YesNoDefaultType  The value of this attribute conveys whether the package should be opened as read-only.
SummaryCodepage  string  The code page integer value or web name for summary info strings only.
ShortNames  YesNoType  Short filenames on source
Compressed  YesNoType  Compressed files on source
AdminImage  YesNoType  Source is an admin image

Content Model

Always empty.

Remarks

These are visible from COM through the IStream interface, and these properties can be seen on the package in Explorer.

Element: PatchMetadata

Description

Properties about the patch to be placed in the PatchMetadata table.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
AllowRemoval  YesNoType  Whether this is an uninstallable patch.
Classification  PatchClassificationType  Category of update.
CreationTimeUTC  string  Creation time of the .msp file in the form mm-dd-yy HH:MM (month-day-year hour:minute).
Description  string  Description of the patch.
DisplayName  string  A title for the patch that is suitable for public display.
ManufacturerName  string  Name of the manufacturer.
MinorUpdateTargetRTM  string  Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.
MoreInfoURL  string  A URL that provides information specific to this patch.
OptimizedInstallMode  YesNoType  If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.
TargetProductName  string  Name of the application or target product suite.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
CustomProperty  anyType (restriction)  A custom property for the PatchMetadata table.
OptimizeCustomActions  anyType (restriction)  Indicates whether custom actions can be skipped when applying the patch.

Element: PatchProperty

Description

A property for this patch database.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Company  string  Name of the company for a custom metadata property.
Name  string  Name of the patch property.
Value  string  Value of the patch property.

Content Model

Always empty.

Element: PatchSequence

Description

Sequence information for this patch database.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
PatchFamily  string  Identifier which indicates a sequence family to which this patch belongs.
ProductCode  Guid  Specifies the ProductCode of the product that this family applies to.
Sequence  string  Used to populate the sequence column of the MsiPatchSequence table in the final MSP file.
Supersede  YesNoType  Set this value to 'yes' to indicate that this patch will supersede all previous patches in this patch family.
Target  string   
TargetImage  string  Specifies the TargetImage that this family applies to.

Content Model

Always empty.

Remarks

Sequence information is generated automatically in most cases, and rarely needs to be set explicitly.

Element: Permission

Description

Sets ACLs on File, Registry, or CreateFolder.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Domain  string   
User  string   
Read  YesNoType   
Delete  YesNoType   
ReadPermission  YesNoType   
ChangePermission  YesNoType   
TakeOwnership  YesNoType   
ReadAttributes  YesNoType   
WriteAttributes  YesNoType   
ReadExtendedAttributes  YesNoType   
WriteExtendedAttributes  YesNoType   
Synchronize  YesNoType   
CreateFile  YesNoType  For a directory, the right to create a file in the directory.
CreateChild  YesNoType  For a directory, the right to create a subdirectory.
DeleteChild  YesNoType  For a directory, the right to delete a directory and all the files it contains, including read-only files.
Traverse  YesNoType  For a directory, the right to traverse the directory.
Append  YesNoType   
Execute  YesNoType   
Write  YesNoType   
CreateSubkeys  YesNoType   
EnumerateSubkeys  YesNoType   
Notify  YesNoType   
CreateLink  YesNoType   
GenericAll  YesNoType   
GenericExecute  YesNoType   
GenericWrite  YesNoType   
GenericRead  YesNoType  specifying this will fail to grant read access

Content Model

Always empty.

Remarks

When under a Registry element, this cannot be used if the Action attribute's value is remove or removeKeyOnInstall. This element has no Id attribute. The table and key are taken from the parent element.

Element: ProcessComponents

Description

Registers and unregisters components, their key paths, and the component clients.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Product

Description

The Product element is analogous to the main function in a C program.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  AutogenGuid  The product code GUID for the product.
Codepage  string  The code page integer value or web name for the resulting MSI. See remarks for more information.
Language  LocalizableInteger  The decimal language ID (LCID) for the product.
Manufacturer  string  The manufacturer of the product.
Name  string  The descriptive name of the product.
UpgradeCode  Guid  The upgrade code GUID for the product.
Version  string  The product's version string.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Package  anyType (restriction)  Properties about the package to be placed in the Summary Information Stream.
any    Allow any element from the ##other namespace.
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

Binary  anyType (restriction)  Binary data used for CustomAction elements and UI controls.
ComplianceCheck  anyType (restriction)  Adds a row to the CCPSearch table.
Component  anyType (restriction)  Component for parent Directory
ComponentGroup  anyType (restriction)  Groups together multiple components to be used in other locations.
Condition  string (extension)  Conditions for components, controls, features, and products.
CustomAction  string (extension)  Specifies a custom action to be added to the MSI CustomAction table.
CustomActionRef  anyType (restriction)  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
CustomTable  anyType (restriction)  Defines a custom table for use from a custom action.
Directory  anyType (restriction)  Directory layout for the product.
DirectoryRef  anyType (restriction)  Create a reference to a Directory element in another Fragment.
EmbeddedChainer  string (extension)   
EmbeddedChainerRef  anyType (restriction)  Reference to an EmbeddedChainer element.
EnsureTable  anyType (restriction)  Use this element to ensure that a table appears in the installer database, even if its empty.
Feature  anyType (restriction)  A feature for the Feature table.
FeatureGroupRef  anyType (restriction)  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  anyType (restriction)  Create a reference to a Feature element in another Fragment.
Icon  anyType (restriction)  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)
InstanceTransforms  anyType (restriction)  Use this element to contain definitions for instance transforms.
Media  anyType (restriction)  Media element describes a disk that makes up the source media for the installation.
PatchCertificates  anyType (restriction)  Identifies the possible signer certificates used to digitally sign patches.
Property  anyType (restriction)  Property value for a Product or Module.
PropertyRef  anyType (restriction)  Reference to a Property value.
InstallExecuteSequence  anyType (restriction)   
InstallUISequence  anyType (restriction)   
AdminExecuteSequence  anyType (restriction)   
AdminUISequence  anyType (restriction)   
AdvertiseExecuteSequence  anyType (restriction)   
SetDirectory  string (extension)  Sets a Directory to a particular value.
SetProperty  string (extension)  Sets a Property to a particular value.
SFPCatalog  anyType (restriction)  Adds a system file protection update catalog file
SymbolPath  anyType (restriction)  A path to symbols.
UI  anyType (restriction)  Enclosing element to compartmentalize UI specifications.
UIRef  anyType (restriction)  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
Upgrade  anyType (restriction)  Upgrade info for a particular UpgradeCode
WixVariable  anyType (restriction)  This element exposes advanced WiX functionality.

Remarks

When linking, only one Product section can be given to the linker to produce a successful result. Using this element creates an msi file.

Element: ProgId

Description

ProgId registration for parent Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   
Description  string   
Icon  string  For an advertised ProgId, the Id of an Icon element.
IconIndex  integer   
Advertise  YesNoType   
NoOpen  string  Specifies that the associated ProgId should not be opened by users.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ProgId  anyType (restriction)  ProgId registration for parent Component.
Extension  anyType (restriction)  Extension for a Component

Remarks

If ProgId has an associated Class, it must be a child of that element.

Element: ProgressText

Derived By

Extending string

Attributes

Name  Type  Description 
Action  string   
Template  string  used to format ActionData messages from action processing

Content Model

Contains text only.

Element: Property

Description

Property value for a Product or Module.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for Property.
Value  string  Sets a default value for the property. The value will be overwritten if the Property is used for a search.
ComplianceCheck  YesNoType  Adds a row to the CCPSearch table. This attribute is only valid when this Property contains a search element.
Admin  YesNoType  Denotes that the Property is saved during
Secure  YesNoType  Denotes that the Property can be passed to the server side when doing a managed installation with elevated privileges.
Hidden  YesNoType  Denotes that the Property is not logged during installation.
SuppressModularization  YesNoType  Use to suppress modularization of this property identifier in merge modules.

Content Model

Can contain a mix of text and the elements defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
ComplianceDrive  anyType (restriction)  Sets the parent of a nested DirectorySearch element to CCP_DRIVE.
ComponentSearch  anyType (restriction)  Searches for file or directory and assigns to value of parent Property.
RegistrySearch  anyType (restriction)  Searches for file, directory or registry key and assigns to value of parent Property
RegistrySearchRef  anyType (restriction)  References an existing RegistrySearch element.
IniFileSearch  anyType (restriction)  Searches for file, directory or registry key and assigns to value of parent Property
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.

Element: PropertyRef

Description

Reference to a Property value.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier of Property to reference.

Content Model

Always empty.

Element: ProtectFile

Description

Specifies a file to be protected.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
File  string  Foreign key into the File table.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ProtectRange  anyType (restriction)  Specifies part of a file that cannot be overwritten during patching.

Element: ProtectRange

Description

Specifies part of a file that cannot be overwritten during patching.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Offset  int  Offset of the start of the range.
Length  int  Length of the range.

Content Model

Always empty.

Element: Publish

Derived By

Extending string

Attributes

Name  Type  Description 
Control  string  The parent Control for this Publish element, should only be specified when this element is a child of the UI element.
Dialog  string  The parent Dialog for this Publish element, should only be specified when this element is a child of the UI element.
Event  string  Set this attribute's value to one of the standard control events to trigger that event.
Order  string  This attribute should only need to be set if this element is nested under a UI element in order to control the order in which this publish event will be started.

Property  string  Set this attribute's value to a property name to set that property.
Value  string  If the Property attribute is specified, set the value of this attribute to the new value for the property.

Content Model

Contains text only.

Element: PublishComponents

Description

Manages the advertisement of the components from the PublishComponent table.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: PublishFeatures

Description

Writes each feature's state into the system registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: PublishProduct

Description

Manages the advertisement of the product information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RadioButton

Description

Text or Icon plus Value that is assigned to the Property of the parent Control (RadioButtonGroup).

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Bitmap  string  This attribute defines the bitmap displayed with the radio button.
Height  LocalizableInteger   
Help  string   
Icon  string  This attribute defines the icon displayed with the radio button.
Text  string  Text displayed with the radio button.
ToolTip  string   
Value  string  Value assigned to the associated control Property when this radio button is selected.
Width  LocalizableInteger   
X  LocalizableInteger   
Y  LocalizableInteger   

Content Model

Always empty.

Element: RadioButtonGroup

Description

Set of radio buttons tied to the specified Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Property  string  Property tied to this group.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
RadioButton  anyType (restriction)  Text or Icon plus Value that is assigned to the Property of the parent Control (RadioButtonGroup).

Element: RegisterClassInfo

Description

Manages the registration of COM class information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterComPlus

Description

Registers COM+ applications.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterExtensionInfo

Description

Manages the registration of extension related information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterFonts

Description

Registers installed fonts with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterMIMEInfo

Description

Registers MIME-related registry information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterProduct

Description

Registers the product information with the installer.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterProgIdInfo

Description

Manages the registration of OLE ProgId information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterTypeLibraries

Description

Registers type libraries with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RegisterUser

Description

Registers the user information with the installer to identify the user of a product.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Registry

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Action  NMTOKEN (restriction)  This is the action that will be taken for this registry key.
Key  string  The localizable key for the registry value.
KeyPath  YesNoType  Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.
Name  string  The localizable registry value name.
Root  RegistryRootType  The predefined root key for the registry value.
Type  NMTOKEN (restriction)  Set this attribute to the type of the desired registry key.
Value  string  Set this attribute to the localizable registry value. This value is formatted.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Permission  anyType (restriction)  Sets ACLs on File, Registry, or CreateFolder.
Registry  anyType (restriction)   
RegistryValue  anyType (restriction)  Used to create a registry value. For multi-string values, this can be used to prepend or append values.

Element: RegistryKey

Description

Used for organization of child RegistryValue elements or to create a registry key (and optionally remove it during uninstallation).

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Action  NMTOKEN (restriction)  This is the action that will be taken for this registry value.
Key  string  The localizable key for the registry value.
Root  RegistryRootType  The predefined root key for the registry value.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
Permission  anyType (restriction)  Sets ACLs on File, Registry, or CreateFolder.
RegistryKey  anyType (restriction)  Used for organization of child RegistryValue elements or to create a registry key (and optionally remove it during uninstallation).
RegistryValue  anyType (restriction)  Used to create a registry value. For multi-string values, this can be used to prepend or append values.

Element: RegistrySearch

Description

Searches for file, directory or registry key and assigns to value of parent Property

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Signature to be used for the file, directory or registry key being searched for.
Root  NMTOKEN (restriction)  Root key for the registry value.
Key  string  Key for the registry value.
Name  string  Registry value name.
Type  NMTOKEN (restriction)  The value must be 'file' if the last child is a FileSearch element and must be 'directory' if last child is a DirectorySearch element.
Win64  YesNoType  Instructs the search to look in the 64-bit registry when the value is 'yes'.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
DirectorySearch  anyType (restriction)  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  anyType (restriction)  References an existing DirectorySearch element.
FileSearch  anyType (restriction)  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  anyType (restriction)  References an existing FileSearch element.

Element: RegistrySearchRef

Description

References an existing RegistrySearch element.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Specify the Id of the RegistrySearch to reference.

Content Model

Always empty.

Element: RegistryValue

Description

Used to create a registry value. For multi-string values, this can be used to prepend or append values.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Root  RegistryRootType  The predefined root key for the registry value.
Key  string  The localizable key for the registry value.
Name  string  The localizable registry value name.
Value  string  Set this attribute to the localizable registry value.
Type  NMTOKEN (restriction)  Set this attribute to the type of the desired registry key.
Action  NMTOKEN (restriction)  This is the action that will be taken for this registry value.
KeyPath  YesNoType  Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.

Content Model

Can contain a mix of text and the elements defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
MultiStringValue  anyType  Use several of these elements to specify each registry value in a multiString registry value.
Permission  anyType (restriction)  Sets ACLs on File, Registry, or CreateFolder.

Remarks

For legacy authoring: Use several of these elements to specify each registry value in a multiString registry value. This element
cannot be used if the Value attribute is specified unless the Type attribute is set to 'multiString'. The values should go in the text area of the RegistryValue element.

Element: RemoveDuplicateFiles

Description

Deletes files installed by the DuplicateFiles action.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveEnvironmentStrings

Description

Modifies the values of environment variables.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveExistingProducts

Description

Goes through the product codes listed in the ActionProperty column of the Upgrade table and removes the products in sequence.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: RemoveFile

Description

Remove a file(s) if the parent component is selected for installation or removal.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Directory  string  Overrides the directory of the parent component with a specific Directory.
Property  string  Overrides the directory of the parent component with the value of the specified property.
Name  WildCardLongFileNameType  This value should be set to the localizable name of the file(s) to be removed.
LongName  WildCardLongFileNameType   
ShortName  WildCardShortFileNameType  The short file name of the file in 8.3 format.
On  NMTOKEN (restriction)  This value determines the time at which the file(s) may be removed.

Content Model

Always empty.

Remarks

Multiple files can be removed by specifying a wildcard for the value of the Name attribute. By default, the source directory of the file is the directory of the parent component. This can be overridden by specifying the Directory attribute with a value corresponding to the Id of the source directory, or by specifying the Property attribute with a value corresponding to a property that will have a value that  resolves to the full path to the source directory.

Element: RemoveFiles

Description

Removes files previously installed by the InstallFiles action.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveFolder

Description

Remove an empty folder if the parent component is selected for installation or removal.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Directory  string  Overrides the directory of the parent component with a specific Directory.
Property  string  Overrides the directory of the parent component with the value of the specified property.
On  NMTOKEN (restriction)  This value determines the time at which the folder may be removed.

Content Model

Always empty.

Remarks

By default, the folder is the directory of the parent component. This can be overridden by specifying the Directory attribute with a value corresponding to the Id of the directory, or by specifying the Property attribute with a value corresponding to a property that will have a value that resolves to the full path of the folder.

Element: RemoveFolders

Description

Removes any folders linked to components set to be removed or run from source.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveIniValues

Description

Removes .ini file information specified for removal in the RemoveIniFile table if the component is set to be installed locally or run from source.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveODBC

Description

Removes the data sources, translators, and drivers listed for removal during the installation.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveRegistryKey

Description

Used for removing registry keys and all child keys either during install or uninstall.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Action  NMTOKEN (restriction)  This is the action that will be taken for this registry value.
Key  string  The localizable key for the registry value.
Root  RegistryRootType  The predefined root key for the registry value.

Content Model

Always empty.

Element: RemoveRegistryValue

Description

Used to remove a registry value during installation.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary key used to identify this particular entry.
Key  string  The localizable key for the registry value.
Name  string  The localizable registry value name.
Root  RegistryRootType  The predefined root key for the registry value.

Content Model

Always empty.

Remarks

There is no standard way to remove a single registry value during uninstall (but you can remove an entire key with RemoveRegistryKey).

Element: RemoveRegistryValues

Description

Removes a registry value that has been authored into the registry table if the associated component was installed locally or as run from source, and is now set to be uninstalled.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: RemoveShortcuts

Description

Manages the removal of an advertised shortcut whose feature is selected for uninstallation or a nonadvertised shortcut whose component is selected for uninstallation.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: ReplacePatch

Description

A patch that is deprecated by this patch.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  Patch GUID to be unregistered if it exists on the machine targeted by this patch.

Content Model

Always empty.

Element: ReserveCost

Description

Disk cost to reserve in a folder for running locally and/or from source.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  A primary key that uniquely identifies this ReserveCost entry.
Directory  string  Adds the amount of disk space specified in RunFromSource or RunLocal to the volume cost of the device containing the directory.
RunFromSource  integer  The number of bytes of disk space to reserve if the component is installed to run from source.
RunLocal  integer  The number of bytes of disk space to reserve if the component is installed to run locally.

Content Model

Always empty.

Element: ResolveSource

Description

Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: RMCCPSearch

Description

Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The RMCCPSearch action should be authored into the InstallUISequence table and InstallExecuteSequence table. The installer prevents RMCCPSearch from running in the InstallExecuteSequence sequence if the action has already run in InstallUISequence sequence. The RMCCPSearch action requires the CCP_DRIVE property to be set to the root path on the removable volume that has the installation for any of the qualifying products. The condition for this action may be specified in the element's inner text.

Element: Row

Description

Row data for a Custom Table

Derived By

Restricting anyType

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Data  string (extension)  Used for a Custom Table. Specifies the data for the parent Row and specified Column.

Element: ScheduleReboot

Description

Prompts the user to restart the system at the end of installation.

Derived By

Type ActionModuleSequenceType

Attributes

Name  Type  Description 
After  string  The name of an action that this action should come after.
Before  string  The name of an action that this action should come before.
Overridable  YesNoType  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

Special actions don't have a built-in sequence number and thus must appear relative to another action. The suggested way to do this is by using the Before or After attribute. InstallExecute and InstallExecuteAgain can optionally appear anywhere between InstallInitialize and InstallFinalize.

Element: SelfRegModules

Description

Processes all modules listed in the SelfReg table and registers all installed modules with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: SelfUnregModules

Description

Unregisters all modules listed in the SelfReg table that are scheduled to be uninstalled.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: ServiceArgument

Description

Argument used in ServiceControl parent

Derived By

Type string

Element: ServiceControl

Description

Starts, stops, and removes services for parent Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   
Name  string  Name of the service.
Start  NMTOKEN (restriction)  Specifies whether the service should be started on install, uninstall or both.
Stop  NMTOKEN (restriction)  Specifies whether the service should be stopped on install, uninstall or both.
Remove  NMTOKEN (restriction)  Specifies whether the service should be removed on install, uninstall or both.
Wait  YesNoType  Specifies whether or not to wait for the service to complete before continuing.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
ServiceArgument  string  Argument used in ServiceControl parent

Remarks

This element is used to control the state
of a service installed by the MSI or MSM file by using the start, stop and remove attributes.
For example, Start='install' Stop='both' Remove='uninstall' would mean: start the service on install,
remove the service when the product is uninstalled, and stop the service both on install and uninstall.

Element: ServiceDependency

Description

Service or group of services that must start before the parent service.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   
Group  YesNoType  Set to 'yes' to indicate that the value in the Id attribute is the name of a group of services.

Content Model

Always empty.

Element: ServiceInstall

Description

Adds and removes services for parent Component.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for this service.
Name  string  This column is the string that gives the service name to install.
DisplayName  string  This column is the localizable string that user interface programs use to identify the service.
Type  NMTOKEN (restriction)  The Windows Installer does not currently support kernelDriver or systemDriver
Interactive  YesNoType  Whether or not the service interacts with the desktop.
Start  NMTOKEN (restriction)  Determines when the service should be started.
ErrorControl  NMTOKEN (restriction)  Determines what action should be taken on an error.
Vital  YesNoType  The overall install should fail if this service fails to install.
LoadOrderGroup  string  The load ordering group that this service should be a part of.
Account  string  The acount under which to start the service. Valid only when ServiceType is ownProcess.
Password  string  The password for the account. Valid only when the account has a password.
Arguments  string  Contains any command line arguments or properties required to run the service.
Description  string  Sets the description of the service.
EraseDescription  YesNoType  Determines whether the existing service description will be ignored.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
any    Allow any element from the ##other namespace.
ServiceDependency  anyType (restriction)  Service or group of services that must start before the parent service.

Element: SetDirectory

Description

Sets a Directory to a particular value.

Derived By

Extending string

Attributes

Name  Type  Description 
Id  string  This attribute specifies a reference to a Directory element with matching Id attribute.
Sequence  NMTOKEN (restriction)  Controls which sequences the Directory assignment is sequenced in.
Value  string  This attribute specifies a string value to assign to the Directory.

Content Model

Contains text only.

Remarks

This is accomplished by creating a Type 51 custom action that is appropriately scheduled in
the InstallUISequence and InstallExecuteSequence.

Element: SetODBCFolders

Description

Checks for existing ODBC drivers and sets the target directory for each new driver to the location of an existing driver.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: SetProperty

Description

Sets a Property to a particular value.

Derived By

Extending string

Attributes

Name  Type  Description 
After  string  The name of the standard or custom action after which this action should be performed.
Before  string  The name of the standard or custom action before which this action should be performed.
Id  string  This attribute specifies the Property to set to the Value.
Sequence  NMTOKEN (restriction)  Controls which sequences the Property assignment is sequenced in.
Value  string  This attribute specifies a string value to assign to the Property.

Content Model

Contains text only.

Remarks

This is accomplished by creating a Type 51 custom action that is appropriately scheduled in
the InstallUISequence and InstallExecuteSequence.

Element: SFPCatalog

Description

Adds a system file protection update catalog file

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Name  string  Filename for catalog file when installed.
Dependency  string  Used to define dependency outside of the package.
SourceFile  string  Path to catalog file in binary.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
SFPCatalog  anyType (restriction)  Adds a system file protection update catalog file
SFPFile  anyType (restriction)  Provides a many-to-many mapping from the SFPCatalog table to the File table

Element: SFPFile

Description

Provides a many-to-many mapping from the SFPCatalog table to the File table

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Primary Key to File Table.

Content Model

Always empty.

Element: Shortcut

Description

Shortcut, default target is parent File, CreateFolder, or Component's Directory

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Unique identifier for the shortcut.
Directory  string  Identifier reference to Directory element where shortcut is to be created.
Name  LongFileNameType  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
LongName  LongFileNameType   
ShortName  ShortFileNameType  The short name of the shortcut in 8.3 format.
Target  string  This attribute can only be set if this Shortcut element is nested under a Component element.

Description  string  The localizable description for the shortcut.
Arguments  string  The command-line arguments for the shortcut.
Hotkey  integer  The hotkey for the shortcut.
Icon  string  Identifier reference to Icon element.
IconIndex  integer  Identifier reference to Icon element.
Show  NMTOKEN (restriction)   
WorkingDirectory  string  Directory identifier (or Property identifier that resolves to a directory) that resolves to the path of the working directory for the shortcut.
Advertise  YesNoType  Specifies if the shortcut should be advertised or not.
DisplayResourceDll  string  The Formatted string providing the full path to the language neutral file containing the MUI Manifest.
DisplayResourceId  integer  The display name index for the shortcut.

DescriptionResourceDll  string  The Formatted string providing the full path to the language neutral file containing the MUI Manifest.
DescriptionResourceId  integer  The description name index for the shortcut.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Icon  anyType (restriction)  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)

Element: Show

Derived By

Extending string

Attributes

Name  Type  Description 
Dialog  string   
OnExit  NMTOKEN (restriction)  mutually exclusive with Before, After, and Sequence attributes
Before  string   
After  string   
Overridable  YesNoType  If "yes", the sequencing of this dialog may be overridden by sequencing elsewhere.
Sequence  integer   

Content Model

Contains text only.

Element: StartServices

Description

Starts system services.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: StopServices

Description

Stops system services.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Subscribe

Description

Sets attributes for events in the EventMapping table

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Event  string  must be one of the standard control events'
Attribute  string  if not present can only handle enable, disable, hide, unhide events

Content Model

Always empty.

Element: Substitution

Description

Specifies the configurable fields of a module database and provides a template for the configuration of each field.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Table  string  Specifies the name of the table being modified in the module database.
Row  string  Specifies the primary keys of the target row in the table named in the Table column.
Column  string  Specifies the target column in the row named in the Row column.
Value  string  Provides a formatting template for the data being substituted into the target field specified by Table, Row, and Column.

Content Model

Always empty.

Element: SymbolPath

Description

A path to symbols.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Path  string  The path.

Content Model

Always empty.

Element: TargetFile

Description

Information about specific files in a target image.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Foreign key into the File table.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
SymbolPath  anyType (restriction)  A path to symbols.
IgnoreRange  anyType (restriction)  Specifies part of a file that is to be ignored during patching.
ProtectRange  anyType (restriction)  Specifies part of a file that cannot be overwritten during patching.

Element: TargetImage

Description

Contains information about the target images of the product.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier for the target image.
SourceFile  string  Full path to the location of the msi file for the target image.
src  string   
Order  int  Relative order of the target image.
Validation  string  Product checking to avoid applying irrelevant transforms.
IgnoreMissingFiles  YesNoType  Files missing from the target image are ignored by the installer.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
SymbolPath  anyType (restriction)  A path to symbols.
TargetFile  anyType (restriction)  Information about specific files in a target image.

Element: TargetProductCode

Description

A product code for a product that may receive this patch (or '*' for all products).

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The product code for a product that can receive this patch (or '*' for all products).

Content Model

Always empty.

Element: Text

Description

An alternative to using the Text attribute when the value contains special XML characters like <, >, or &.

Derived By

Extending string

Attributes

Name  Type  Description 
SourceFile  string  Instructs the text to be imported from a file instead of the element value during the binding process.
src  string   

Content Model

Contains text only.

Element: TextStyle

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   
FaceName  string   
Size  string   
Red  integer  0 to 255
Green  integer  0 to 255
Blue  integer  0 to 255
Bold  YesNoType   
Italic  YesNoType   
Underline  YesNoType   
Strike  YesNoType   

Content Model

Always empty.

Element: TypeLib

Description

Register a type library (TypeLib).

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  The GUID that identifes the type library.
Advertise  YesNoType  Value of 'yes' will create a row in the TypeLib table. Value of 'no' will create rows in the Registry table.
Control  YesNoType  Value of 'yes' means the type library describes controls, and should not be displayed in type browsers intended for nonvisual objects.
Cost  int  The cost associated with the registration of the type library in bytes.
Description  string  The localizable description of the type library.
HasDiskImage  YesNoType  Value of 'yes' means the type library exists in a persisted form on disk.
HelpDirectory  string  The identifier of the Directory element for the help directory.
Hidden  YesNoType  Value of 'yes' means the type library should not be displayed to users, although its use is not restricted.

Language  integer  The language of the type library.
MajorVersion  integer  The major version of the type library.
MinorVersion  integer  The minor version of the type library.
ResourceId  integer  The resource id of a typelib.
Restricted  YesNoType  Value of 'yes' means the type library is restricted, and should not be displayed to users.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
AppId  anyType (restriction)  Application ID containing DCOM information for the associated application GUID.

Class  anyType (restriction)  COM Class registration for parent Component.
Interface  anyType (restriction)  COM Interface registration for parent Typelib.

Remarks

Please note that in order to properly use this non-advertised, you will need use this element with Advertise='no' and also author the appropriate child Interface elements by extracting them from the type library itself.

Element: UI

Description

Enclosing element to compartmentalize UI specifications.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
BillboardAction  anyType (restriction)  Billboard action during which child Billboards are displayed
Binary  anyType (restriction)  Binary data used for CustomAction elements and UI controls.
ComboBox  anyType (restriction)  Set of items for a particular ComboBox control tied to an install Property
Dialog  anyType (restriction)  Defines a dialog box in the Dialog Table.
DialogRef  anyType (restriction)  Reference to a Dialog.
EmbeddedUI  anyType (restriction)  Element value is the condition.
Error  string (extension)   
ListBox  anyType (restriction)  Set of items for a particular ListBox control tied to an install Property
ListView  anyType (restriction)  Set of items for a particular ListView control tied to an install Property
ProgressText  string (extension)   
Property  anyType (restriction)  Property value for a Product or Module.
PropertyRef  anyType (restriction)  Reference to a Property value.
Publish  string (extension)   
RadioButtonGroup  anyType (restriction)  Set of radio buttons tied to the specified Property
AdminUISequence  anyType (restriction)   
InstallUISequence  anyType (restriction)   
TextStyle  anyType (restriction)   
UIRef  anyType (restriction)  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
UIText  string (extension)  Text associated with certain controls

Element: UIRef

Description

Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string   

Content Model

Always empty.

Element: UIText

Description

Text associated with certain controls

Derived By

Extending string

Attributes

Name  Type  Description 
Id  string   

Content Model

Contains text only.

Element: UnpublishComponents

Description

Manages the unadvertisement of components listed in the PublishComponent table.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnpublishFeatures

Description

Removes selection-state and feature-component mapping information from the registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterClassInfo

Description

Manages the removal of COM class information from the system registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterComPlus

Description

Removes COM+ applications from the registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterExtensionInfo

Description

Manages the removal of extension-related information from the system registry.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterFonts

Description

Removes registration information about installed fonts from the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterMIMEInfo

Description

Unregisters MIME-related registry information from the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterProgIdInfo

Description

Manages the unregistration of OLE ProgId information with the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: UnregisterTypeLibraries

Description

Unregisters type libraries from the system.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: Upgrade

Description

Upgrade info for a particular UpgradeCode

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  Guid  This value specifies the upgrade code for the products that are to be detected by the FindRelatedProducts action.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
Property  anyType (restriction)  Property value for a Product or Module.
UpgradeVersion  string (extension)   

Element: UpgradeFile

Description

Specifies files to either ignore or to specify optional data about a file.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
File  string  Foreign key into the File table.
Ignore  YesNoType  If yes, the file is ignored during patching, and the next two attributes are ignored.
AllowIgnoreOnError  YesNoType  Specifies whether patching this file is vital.
WholeFile  YesNoType  Whether the whole file should be installed, rather than creating a binary patch.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
SymbolPath  anyType (restriction)  A path to symbols.

Element: UpgradeImage

Description

Contains information about the upgraded images of the product.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  Identifier to connect target images with upgraded image.
SourceFile  string  Full path to location of msi file for upgraded image.
src  string   
SourcePatch  string  Modified copy of the upgraded installation database that contains additional authoring specific to patching.
srcPatch  string   

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
TargetImage  anyType (restriction)  Contains information about the target images of the product.
SymbolPath  anyType (restriction)  A path to symbols.
UpgradeFile  anyType (restriction)  Specifies files to either ignore or to specify optional data about a file.

Element: UpgradeVersion

Derived By

Extending string

Attributes

Name  Type  Description 
Minimum  string  Specifies the lower bound on the range of product versions to be detected by FindRelatedProducts.
Maximum  string  Specifies the upper boundary of the range of product versions detected by FindRelatedProducts.
Language  string  Specifies the set of languages detected by FindRelatedProducts.
RemoveFeatures  string  The installer sets the REMOVE property to features specified in this column.
Property  string  When the FindRelatedProducts action detects a related product installed on the system, it appends the product code to the property specified in this field.
MigrateFeatures  YesNoType  Set to "yes" to migrate feature states from upgraded products by enabling the logic in the MigrateFeatureStates action.
OnlyDetect  YesNoType  Set to "yes" to detect products and applications but do not uninstall.
IgnoreRemoveFailure  YesNoType  Set to "yes" to continue installation upon failure to remove a product or application.
IncludeMinimum  YesNoType  Set to "no" to make the range of versions detected exclude the value specified in Minimum.
IncludeMaximum  YesNoType  Set to "yes" to make the range of versions detected include the value specified in Maximum.
ExcludeLanguages  YesNoType  Set to "yes" to detect all languages, excluding the languages listed in the Language attribute.

Content Model

Contains text only.

Element: Validate

Description

Sets information on the patch transform that determines to which product the transform applies and what errors should be ignored when applying the patch transform.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
ProductId  YesNoType  Requires that the upgrade ProductCode match the target ProductCode.
ProductLanguage  YesNoType  Requires that the upgrade ProductLanguage match the target ProductLanguage.
ProductVersion  NMTOKEN (restriction)  Determines how many fields in the ProductVersion to check.
ProductVersionOperator  NMTOKEN (restriction)  Determines how the target and upgrade ProductVersions are compared.
UpgradeCode  YesNoType  Requires that the upgrade UpgradeCode match the target UpgradeCode.
IgnoreAddExistingRow  YesNoType  Ignore errors when adding existing rows.
IgnoreAddExistingTable  YesNoType  Ignore errors when adding existing tables.
IgnoreDeleteMissingRow  YesNoType  Ignore errors when deleting missing rows.
IgnoreDeleteMissingTable  YesNoType  Ignore errors when deleting missing tables.
IgnoreUpdateMissingRow  YesNoType  Ignore errors when updating missing rows.
IgnoreChangingCodePage  YesNoType  Ignore errors when changing the database code page.

Content Model

Always empty.

Element: ValidateProductID

Description

Sets the ProductID property to the full product identifier.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

This action must be sequenced before the user interface wizard in the InstallUISequence table and before the RegisterUser action in the InstallExecuteSequence table. If the product identifier has already been validated successfully, the ValidateProductID action does nothing. The ValidateProductID action always returns a success, whether or not the product identifier is valid, so that the product identifier can be entered on the command line the first time the product is run. The product identifier can be validated without having the user reenter this information by setting the PIDKEY property on the command line or by using a transform. The display of the dialog box requesting the user to enter the product identifier can then be made conditional upon the presence of the ProductID property, which is set when the PIDKEY property is validated. The condition for this action may be specified in the element's inner text.

Element: Verb

Description

Verb definition for an Extension.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The verb for the command.
Command  string  The localized text displayed on the context menu.
Argument  string  Value for the command arguments.
Sequence  integer  The sequence of the commands.
Target  string   
TargetFile  string  Either this attribute or the TargetProperty attribute must be specified for a non-advertised verb.
TargetProperty  string  Either this attribute or the TargetFile attribute must be specified for a non-advertised verb.

Content Model

Always empty.

Remarks

When advertised, this element creates a row in the  Verb table.  When not advertised, this element creates the appropriate rows in Registry table.

Element: Wix

Description

This is the top-level container element for every wxs file.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
RequiredVersion  VersionType  Required version of the WiX toolset to compile this input file.

Content Model

Contains elements as defined in the following table.

Component  Type  Description 
PatchCreation  anyType (restriction)  The PatchCreation element is analogous to the main function in a C program.
Module  anyType (restriction)  The Module element is analogous to the main function in a C program.
Patch  anyType (restriction)  The Patch element is analogous to the main function in a C program.
Product  anyType (restriction)  The Product element is analogous to the main function in a C program.
Fragment  anyType (restriction)  The Fragment element is the building block of creating an installer database in WiX.

Remarks

Among the possible children, the Product, Module, Patch, and PatchCreation elements are analogous to the main function in a C program. There can only be one of these present when linking occurs. Product compiles into an msi file, Module compiles into an msm file, PatchCreation compiles into a pcp file. The Fragment element is an atomic unit which ultimately links into either a Product, Module, or PatchCreation. The Fragment can either be completely included or excluded during linking.

Element: WixVariable

Description

This element exposes advanced WiX functionality.

Derived By

Restricting anyType

Attributes

Name  Type  Description 
Id  string  The name of the variable.
Overridable  YesNoType  Set this value to 'yes' in order to make the variable's value overridable either by another WixVariable entry or via the command-line option -d<name>=<value> for light.exe.
Value  string  The value of the variable.

Content Model

Always empty.

Remarks

Use this element to declare WiX variables from directly within your authoring. WiX variables are not resolved until the final msi/msm/pcp
file is actually generated. WiX variables do not persist into the msi/msm/pcp file, so they cannot be used when an MSI file is being installed; its a WiX-only concept.

Element: WriteEnvironmentStrings

Description

Modifies the values of environment variables.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: WriteIniValues

Description

Writes the .ini file information that the application needs written to its .ini files.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Element: WriteRegistryValues

Description

Sets up an application's registry information.

Derived By

Type ActionSequenceType

Attributes

Name  Type  Description 
Sequence  integer  A value used to indicate the position of this action in a sequence.
Suppress  YesNoType  If yes, this action will not occur.

Content Model

Contains text only.

Remarks

The condition for this action may be specified in the element's inner text.

Attributes: WiX Database

Attributes

Name  Description 
Absent [element Feature]  This attribute determines if a user will have the option to set a feature to absent in the user interface.
Account [element ServiceInstall]  The acount under which to start the service. Valid only when ServiceType is ownProcess.
Action [element Condition]  Used only under Control elements and is required. Allows specific actions to be applied to a control based on the result of this condition.
Action [element Custom]  The action to which the Custom element applies.
Action [element Environment]  Specfies whether the environmental variable should be created, set or removed when the parent component is installed.
Action [element IniFile]  The type of modification to be made.
Action [element ProgressText]   
Action [element Registry]  This is the action that will be taken for this registry key.
Action [element RegistryKey]  This is the action that will be taken for this registry value.
Action [element RegistryValue]  This is the action that will be taken for this registry value.
Action [element RemoveRegistryKey]  This is the action that will be taken for this registry value.
ActivateAtStorage [element AppId]  Set this value to 'yes' to configure the client to activate on the same system as persistent storage.
Admin [element Property]  Denotes that the Property is saved during
AdminImage [element Package]  Set to 'yes' if the source is an admin image.
AdminImage [element PatchInformation]  Source is an admin image
Advertise [element AppId]  Set this value to 'yes' in order to create a normal AppId table row. Set this value to 'no' in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).
Advertise [element Class]  Set this value to "yes" in order to create a normal Class table row. Set this value to "no" in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).
Advertise [element Extension]  Whether this extension is to be advertised. The default is "no".
Advertise [element MIME]  Whether this MIME is to be advertised.
Advertise [element ProgId]   
Advertise [element Shortcut]  Specifies if the shortcut should be advertised or not.
Advertise [element TypeLib]  Value of 'yes' will create a row in the TypeLib table. Value of 'no' will create rows in the Registry table.
After [element Custom]  The name of the standard or custom action after which this action should be performed.
After [element SetProperty]  The name of the standard or custom action after which this action should be performed.
After [element Show]   
After [type ActionModuleSequenceType]  The name of an action that this action should come after.
AllowAdvertise [element Feature]  This attribute determins the possible advertise states for this feature.
AllowIgnoreOnError [element UpgradeFile]  Specifies whether patching this file is vital.
AllowMajorVersionMismatches [element PatchCreation]  Use this to set whether the major versions between the upgrade and target images match.
AllowProductCodeMismatches [element PatchCreation]  Use this to set whether the product code between the upgrade and target images match.
AllowRemoval [element Patch]  Whether this is an uninstallable patch.
AllowRemoval [element PatchMetadata]  Whether this is an uninstallable patch.
ApiPatchingSymbolNoFailuresFlag [element Patch]  Flag used when creating a binary file patch.
ApiPatchingSymbolNoImagehlpFlag [element Patch]  Flag used when creating a binary file patch.
ApiPatchingSymbolUndecoratedTooFlag [element Patch]  Flag used when creating a binary file patch.
AppData [element Category]  An optional localizable text describing the category.
Append [element Permission]   
AppId [element Class]  This attribute is only allowed when a Class is advertised.
Argument [element Class]  This column is optional only when the Context column is set to "LocalServer" or "LocalServer32" server context.
Argument [element Verb]  Value for the command arguments.
Arguments [element ServiceInstall]  Contains any command line arguments or properties required to run the service.
Arguments [element Shortcut]  The command-line arguments for the shortcut.
Assembly [element File]  Specifies if this File is a Win32 Assembly or .NET Assembly that needs to be installed into the Global Assembly Cache.
AssemblyApplication [element File]  Specifies the file identifier of the application file.
AssemblyManifest [element File]  Specifies the file identifier of the manifest file that describes this assembly.
AssignToProperty [element DirectorySearch]  Set the result of this search to the value of the outer Property.
AssignToProperty [element DirectorySearchRef]  Set the result of this search to the value of the outer Property.
Attribute [element Subscribe]  if not present can only handle enable, disable, hide, unhide events
Before [element Custom]  The name of the standard or custom action before which this action should be performed. Mutually exclusive with OnExit, After, and Sequence attributes
Before [element SetProperty]  The name of the standard or custom action before which this action should be performed.
Before [element Show]   
Before [type ActionModuleSequenceType]  The name of an action that this action should come before.
BinaryKey [element CustomAction]  This attribute is a reference to a Binary element with matching Id attribute.
BinarySource [element EmbeddedChainer]  Reference to the Binary element that contains the chainer executeable.
BindPath [element File]  A list of paths, separated by semicolons, that represent the paths to be searched to find the imported DLLs.
Bitmap [element Control]  This attribute is only valid for RadioButton and PushButton Controls.
Bitmap [element RadioButton]  This attribute defines the bitmap displayed with the radio button.
Blue [element TextStyle]  0 to 255
Bold [element TextStyle]   
Cabinet [element Media]  The name of the cabinet if some or all of the files stored on the media are in a cabinet file.
Cancel [element Control]  Set this attribute to "yes" to cause this Control to be invoked by the escape key.
Category [element Column]  Category of this column.
CDROM [element Control]  This attribute is only valid for Volume and Directory Controls.
ChangePermission [element Permission]   
CheckBoxValue [element Control]  This attribute is only valid for CheckBox Controls.
Checksum [element File]  This attribute should be set to "yes" for every executable file in the installation that has a valid checksum stored in the Portable Executable (PE) file header.
Class [element MIME]  Class ID for the COM server that is to be associated with the MIME content.
Classification [element Patch]  Category of updates.
Classification [element PatchMetadata]  Category of update.
CleanWorkingFolder [element PatchCreation]  Use this to set whether Patchwiz should clean the temp folder when finished.
ClientPatchId [element Patch]  An easily referenced identity unique to a patch that can be used in product authoring.
Codepage [element Module]  The code page integer value or web name for the resulting MSM.
Codepage [element Patch]  The code page integer value or web name for the resulting MSP.
Codepage [element PatchCreation]  The code page integer value or web name for the resulting PCP.
Codepage [element Product]  The code page integer value or web name for the resulting MSI. See remarks for more information.
Column [element Data]  Specifies in which column to insert this data.
Column [element Substitution]  Specifies the target column in the row named in the Row column.
ComboList [element Control]  This attribute is only valid for ComboBox Controls.
Command [element Verb]  The localized text displayed on the context menu.
CommandLine [element EmbeddedChainer]  Value to append to the transaction handle and passed to the chainer executable.
Comments [element Package]  Optional comments for browsing.
Comments [element PatchInformation]  Optional comments for browsing
CompanionFile [element File]  Set this attribute to make this file a companion child of another file.
Company [element CustomProperty]  The name of the company.
Company [element PatchProperty]  Name of the company for a custom metadata property.
ComplianceCheck [element Property]  Adds a row to the CCPSearch table. This attribute is only valid when this Property contains a search element.
ComPlusFlags [element Component]  Set this attribute to create a ComPlus entry.
ComponentGuidGenerationSeed [element Directory]  The Component Guid Generation Seed is a guid that must be used when a Component with the generate guid directive ("*") is not rooted in a standard Windows Installer directory (for example, ProgramFilesFolder or CommonFilesFolder, etc).
Compressed [element File]  Sets the file's source type compression.
Compressed [element Package]  Set to 'yes' to have compressed files in the source.
Compressed [element PatchInformation]  Compressed files on source
CompressionLevel [element Media]  Indicates the compression level for the Media's cabinet.
ConfigurableDirectory [element Feature]  Specify the Id of a Directory that can be configured by the user at installation time.
ContentType [element Extension]  The MIME type that is to be written.
ContentType [element MIME]  This is the identifier for the MIME content.
Context [element Class]  The server context(s) for this server.
ContextData [element Configuration]  Specifies a semantic context for the requested data.
Control [element Class]  Set this attribute's value to 'yes' to identify an object as an ActiveX Control.
Control [element Publish]  The parent Control for this Publish element, should only be specified when this element is a child of the UI element.
Control [element TypeLib]  Value of 'yes' means the type library describes controls, and should not be displayed in type browsers intended for nonvisual objects.
Cost [element TypeLib]  The cost associated with the registration of the type library in bytes.
CreateChild [element Permission]  For a directory, the right to create a subdirectory.
CreateFile [element Permission]  For a directory, the right to create a file in the directory.
CreateLink [element Permission]   
CreateSubkeys [element Permission]   
CreationTimeUTC [element PatchMetadata]  Creation time of the .msp file in the form mm-dd-yy HH:MM (month-day-year hour:minute).
CustomPalette [element Dialog]  Used to specify if pictures in the dialog box are rendered with a custom palette.
Default [element Control]  Set this attribute to "yes" to cause this Control to be invoked by the return key.
Default [element MIME]  If 'yes', become the content type for the parent Extension.
DefaultLanguage [element File]  This is the default language of this file.
DefaultSize [element File]  This is the default size of this file.
DefaultValue [element Configuration]  Specifies a default value for the item in this record if the merge tool declines to provide a value.
DefaultVersion [element File]  This is the default version of this file.
Delete [element CopyFile]  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
Delete [element Permission]   
DeleteChild [element Permission]  For a directory, the right to delete a directory and all the files it contains, including read-only files.
Dependency [element SFPCatalog]  Used to define dependency outside of the package.
Depth [element DirectorySearch]  Depth below the path that the installer searches for the file or directory specified by the search.
Description [element AppId]  Set this value to the description of the AppId.
Description [element Class]  Localized description associated with the Class ID and Program ID.
Description [element Column]  Description of this column.
Description [element Configuration]  Description for authoring.
Description [element Feature]  Longer string of text describing the feature.
Description [element Package]  The product full name or description.
Description [element Patch]  Description of the patch.
Description [element PatchInformation]  Product full name or description
Description [element PatchMetadata]  Description of the patch.
Description [element ProgId]   
Description [element ServiceInstall]  Sets the description of the service.
Description [element Shortcut]  The localizable description for the shortcut.
Description [element TypeLib]  The localizable description of the type library.
DescriptionResourceDll [element Shortcut]  The Formatted string providing the full path to the language neutral file containing the MUI Manifest.
DescriptionResourceId [element Shortcut]  The description name index for the shortcut.
DestinationDirectory [element CopyFile]  Set this value to the destination directory where an existing file on the target machine should be moved or copied to.
DestinationLongName [element CopyFile]   
DestinationName [element CopyFile]  In prior versions of the WiX toolset, this attribute specified the short file name.
DestinationProperty [element CopyFile]  Set this value to a property that will have a value that resolves to the full path of the destination directory.
DestinationShortName [element CopyFile]  The short file name of the file in 8.3 format.
Dialog [element Publish]  The parent Dialog for this Publish element, should only be specified when this element is a child of the UI element.
Dialog [element Show]   
Directory [element Component]  Sets the Directory of the Component.
Directory [element CreateFolder]  Identifier of Directory to create.
Directory [element CustomAction]  This attribute specifies a reference to a Directory element with matching Id attribute containing a directory path.

Directory [element IniFile]  Name of a property, the value of which is the full path of the folder containing the .ini file.
Directory [element RemoveFile]  Overrides the directory of the parent component with a specific Directory.
Directory [element RemoveFolder]  Overrides the directory of the parent component with a specific Directory.
Directory [element ReserveCost]  Adds the amount of disk space specified in RunFromSource or RunLocal to the volume cost of the device containing the directory.
Directory [element Shortcut]  Identifier reference to Directory element where shortcut is to be created.
Disabled [element Control]  Set this attribute to "yes" to cause the Control to be disabled.
DisableRegistryReflection [element Component]  Set this attribute to 'yes' in order to disable registry reflection on all existing and new registry keys affected by this component.
DiskId [element Component]  This attribute must be set either on a Component element or all of its children File elements.
DiskId [element Directory]  Sets the default disk identifier for the files contained in this directory.
DiskId [element DirectoryRef]  Sets the default disk identifier for the files contained in this directory.
DiskId [element Family]  Entered into the DiskId field of the new Media table record.
DiskId [element File]  Specifies the Media this File should be sourced on.
DiskId [element Merge]  The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere.
DiskPrompt [element Family]  Value to display in the "[1]" of the DiskPrompt Property.
DiskPrompt [element Media]  The disk name, which is usually the visible text printed on the disk.
Display [element Feature]  Determines the initial display of this feature in the feature tree.

DisplayName [element Configuration]  Display name for authoring.
DisplayName [element Patch]  A title for the patch that is suitable for public display.
DisplayName [element PatchMetadata]  A title for the patch that is suitable for public display.
DisplayName [element ServiceInstall]  This column is the localizable string that user interface programs use to identify the service.
DisplayResourceDll [element Shortcut]  The Formatted string providing the full path to the language neutral file containing the MUI Manifest.
DisplayResourceId [element Shortcut]  The display name index for the shortcut.

DllEntry [element CustomAction]  This attribute specifies the name of a function in a custom action to execute.

DllSurrogate [element AppId]  Set this value to specify that the class is a DLL that is to be activated in a surrogate EXE process, and the surrogate process to be used is the path of a surrogate EXE file specified by the value.
Domain [element Permission]   
DriverName [element ODBCDataSource]  Required if not found as child of ODBCDriver element
ElevationShield [element Control]  This attribute is only valid for PushButton controls.

EmbedCab [element Media]  Instructs the binder to embed the cabinet in the product if 'yes'.
EnumerateSubkeys [element Permission]   
EraseDescription [element ServiceInstall]  Determines whether the existing service description will be ignored.
Error [element CustomAction]  This attribute specifies an index in the MSI Error table to use as an error message for a type 19 custom action that displays the error message and aborts a product's installation.
ErrorControl [element ServiceInstall]  Determines what action should be taken on an error.
ErrorDialog [element Dialog]  Specifies this dialog as an error dialog.
Event [element Publish]  Set this attribute's value to one of the standard control events to trigger that event.
Event [element Subscribe]  must be one of the standard control events'
ExcludedId [element Exclusion]  Identifier of the merge module that is incompatible.
ExcludedMaxVersion [element Exclusion]  Maximum version excluded from a range.
ExcludedMinVersion [element Exclusion]  Minimum version excluded from a range.
ExcludeExceptLanguage [element Exclusion]  Numeric language ID of the merge module in ExcludedID.
ExcludeLanguage [element Exclusion]  Numeric language ID of the merge module in ExcludedID.
ExcludeLanguages [element UpgradeVersion]  Set to "yes" to detect all languages, excluding the languages listed in the Language attribute.
ExeCommand [element CustomAction]  This attribute specifies the command line parameters to supply to an externally run executable.
Execute [element CustomAction]  This attribute indicates the scheduling of the custom action.
Execute [element Permission]   
FaceName [element TextStyle]   
Feature [element Billboard]  Feature whose state determines if the Billboard is shown.
Feature [element Category]  Feature that controls the advertisement of the category.
Feature [element Component]  Identifies a feature to which this component belongs, as a shorthand for a child ComponentRef element of the Feature element.
Field [element IniFileSearch]  The field in the .ini line. If field is Null or 0, the entire line is read.
File [element ExternalFile]  Foreign key into the File table.
File [element ODBCDriver]  Required if not found as child of File element
File [element ODBCTranslator]  Required if not found as child of File element
File [element ProtectFile]  Foreign key into the File table.
File [element UpgradeFile]  Foreign key into the File table.
FileCompression [element Merge]  Specifies if the files in the merge module should be compressed.
FileId [element CopyFile]  This attribute cannot be specified if the element is nested under a File element.
FileKey [element CustomAction]  This attribute specifies a reference to a File element with matching Id attribute that will execute the custom action code in the file after the file is installed.
FileSource [element Directory]  Used to set the file system source for this directory's child elements.
FileSource [element DirectoryRef]  Used to set the file system source for this directory ref's child elements.
FileSource [element EmbeddedChainer]  Reference to the File element that is the chainer executeable.
Fixed [element Control]  This attribute is only valid for Volume and Directory Controls.
FixedSize [element Control]  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
Floppy [element Control]  This attribute is only valid for Volume and Directory Controls.
FontTitle [element File]  Causes an entry to be generated for the file in the Font table with the specified FontTitle.
Format [element Configuration]  Specifies the format of the data being changed.
FormatSize [element Control]  This attribute is only valid for Text Controls.
GenericAll [element Permission]   
GenericExecute [element Permission]   
GenericRead [element Permission]  specifying this will fail to grant read access
GenericWrite [element Permission]   
Green [element TextStyle]  0 to 255
Group [element ServiceDependency]  Set to 'yes' to indicate that the value in the Id attribute is the name of a group of services.
Guid [element Component]  This value should be a guid that uniquely identifies this component's contents, language, platform, and version.

Guid [element ComponentSearch]  The component ID of the component whose key path is to be used for the search.
Guid [element Module]  This attribute is deprecated. Use the Package/@Id instead.
Handler [element Class]  The default inproc handler.
HasBorder [element Control]  This attribute is only valid for RadioButton Controls.
HasDiskImage [element TypeLib]  Value of 'yes' means the type library exists in a persisted form on disk.
Height [element Control]  Height of the rectangular boundary of the control.
Height [element Dialog]  The height of the dialog box in dialog units.
Height [element RadioButton]   
Help [element Control]  This attribute is reserved for future use.
Help [element RadioButton]   
HelpDirectory [element TypeLib]  The identifier of the Directory element for the help directory.
HelpKeyword [element Configuration]  Keyword into chm file for authoring.
HelpLocation [element Configuration]  Location of chm file for authoring.
Hidden [element Control]  Set this attribute to "yes" to cause the Control to be hidden.
Hidden [element Dialog]  Used to hide the dialog.
Hidden [element File]  Set to yes in order to have the file's hidden attribute set when it is installed on the target machine.
Hidden [element Property]  Denotes that the Property is not logged during installation.
Hidden [element TypeLib]  Value of 'yes' means the type library should not be displayed to users, although its use is not restricted.

HideTarget [element CustomAction]  Ensures the installer does not log the CustomActionData for the deferred custom action.
Hotkey [element Shortcut]  The hotkey for the shortcut.
Icon [element Class]  The file providing the icon associated with this CLSID.
Icon [element Control]  This attribute is only valid for RadioButton and PushButton Controls.
Icon [element ListItem]  The identifier of the Binary (not Icon) element containing the icon to associate with this item.
Icon [element ProgId]  For an advertised ProgId, the Id of an Icon element.
Icon [element RadioButton]  This attribute defines the icon displayed with the radio button.
Icon [element Shortcut]  Identifier reference to Icon element.
IconIndex [element Class]  Icon index into the icon file.
IconIndex [element ProgId]   
IconIndex [element Shortcut]  Identifier reference to Icon element.
IconSize [element Control]  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
Id [element AppId]  Set this value to the AppID GUID that corresponds to the named executable.
Id [element AssemblyName]  Name of the attribute associated with the value specified in the Value column.
Id [element Billboard]  Unique identifier for the Billboard.
Id [element BillboardAction]  Action name that determines when the Billboard should be shown.
Id [element Binary]  The Id cannot by longer than 55 characters.
Id [element BinaryRef]  The identifier of the Binary element to reference.
Id [element Category]  A string GUID that represents the category of components being grouped together.
Id [element Class]  The Class identifier (CLSID) of a COM server.
Id [element Column]  Identifier for the column.
Id [element Component]  Component identifier; this is the primary key for identifying components.
Id [element ComponentGroup]  Identifier for the ComponentGroup.
Id [element ComponentGroupRef]  The identifier of the ComponentGroup to reference.
Id [element ComponentRef]  The identifier of the Component element to reference.
Id [element ComponentSearch]   
Id [element Control]  Combined with the Dialog Id to make up the primary key of the Control table.
Id [element CopyFile]  Primary key used to identify this particular entry.
Id [element CustomAction]  The identifier of the custom action.
Id [element CustomActionRef]  The identifier of the CustomAction to reference.
Id [element CustomTable]  Identifier for the custom table.
Id [element Dialog]  Unique identifier for the dialog.
Id [element DialogRef]  The identifier of the Dialog to reference.
Id [element DigitalCertificate]  Identifier for a certificate file.
Id [element Directory]  This value is the unique identifier of the directory entry.
Id [element DirectoryRef]  The identifier of the Directory element to reference.
Id [element DirectorySearch]  Unique identifier for the directory search.
Id [element DirectorySearchRef]  Id of the search being referred to.
Id [element EmbeddedChainer]  Unique identifier for embedded chainer.
Id [element EmbeddedChainerRef]   
Id [element EmbeddedUI]  Unique identifier for embedded UI.
Id [element EmbeddedUIResource]  Identifier for the embedded UI resource.
Id [element EnsureTable]  The name of the table.
Id [element Environment]  Unique identifier for environment entry.
Id [element Error]  Number of the error for which a message is being provided.
Id [element Extension]  This is simply the file extension, like "doc" or "xml". Do not include the preceding period.
Id [element Feature]  Unique identifier of the feature.
Id [element FeatureGroup]  Identifier for the FeatureGroup.
Id [element FeatureGroupRef]  The identifier of the FeatureGroup to reference.
Id [element FeatureRef]  The identifier of the Feature element to reference.
Id [element File]  The unique identifier for this File element.
Id [element FileSearch]  Unique identifier for the file search and external key into the Signature table.
Id [element FileSearchRef]  Specify the Id to the FileSearch to reference.
Id [element Fragment]  Optional identifier for a Fragment.
Id [element Icon]  The Id cannot by longer than 55 characters.
Id [element IconRef]  The identifier of the Icon element to reference.
Id [element IgnoreTable]  The name of the table in the merge module that is not to be merged into the .msi file.
Id [element IniFile]  Identifier for ini file.
Id [element IniFileSearch]  External key into the Signature table.
Id [element Instance]  The identity of the instance transform.
Id [element Interface]  GUID identifier for COM Interface.
Id [element Media]  Disk identifier for Media table.
Id [element Merge]  The unique identifier for the Merge element in the source code.
Id [element MergeRef]  The unique identifier for the Merge element to be referenced.
Id [element Module]  The name of the merge module (not the file name).
Id [element ODBCDataSource]  Identifier of the data source.
Id [element ODBCDriver]  Identifier for the driver.
Id [element ODBCTranslator]  Identifier for the translator.
Id [element Package]  The package code GUID for a product or merge module.

Id [element Patch]  Patch code for this patch.
Id [element PatchBaseline]  Identifier for a set of product versions.
Id [element PatchCreation]  PatchCreation identifier; this is the primary key for identifying patches.
Id [element PatchFamily]  Identifier which indicates a sequence family to which this patch belongs.
Id [element PatchFamilyRef]  The identifier of the CustomAction to reference.
Id [element Product]  The product code GUID for the product.
Id [element ProgId]   
Id [element Property]  Unique identifier for Property.
Id [element PropertyRef]  Identifier of Property to reference.
Id [element Registry]  Primary key used to identify this particular entry.
Id [element RegistryKey]  Primary key used to identify this particular entry.
Id [element RegistrySearch]  Signature to be used for the file, directory or registry key being searched for.
Id [element RegistrySearchRef]  Specify the Id of the RegistrySearch to reference.
Id [element RegistryValue]  Primary key used to identify this particular entry.
Id [element RemoveFile]  Primary key used to identify this particular entry.
Id [element RemoveFolder]  Primary key used to identify this particular entry.
Id [element RemoveRegistryKey]  Primary key used to identify this particular entry.
Id [element RemoveRegistryValue]  Primary key used to identify this particular entry.
Id [element ReplacePatch]  Patch GUID to be unregistered if it exists on the machine targeted by this patch.
Id [element ReserveCost]  A primary key that uniquely identifies this ReserveCost entry.
Id [element ServiceControl]   
Id [element ServiceDependency]   
Id [element ServiceInstall]  Unique identifier for this service.
Id [element SetDirectory]  This attribute specifies a reference to a Directory element with matching Id attribute.
Id [element SetProperty]  This attribute specifies the Property to set to the Value.
Id [element SFPFile]  Primary Key to File Table.
Id [element Shortcut]  Unique identifier for the shortcut.
Id [element TargetFile]  Foreign key into the File table.
Id [element TargetImage]  Identifier for the target image.
Id [element TargetProductCode]  The product code for a product that can receive this patch (or '*' for all products).
Id [element TextStyle]   
Id [element TypeLib]  The GUID that identifes the type library.
Id [element UI]   
Id [element UIRef]   
Id [element UIText]   
Id [element Upgrade]  This value specifies the upgrade code for the products that are to be detected by the FindRelatedProducts action.
Id [element UpgradeImage]  Identifier to connect target images with upgraded image.
Id [element Verb]  The verb for the command.
Id [element WixVariable]  The name of the variable.
Ignore [element UpgradeFile]  If yes, the file is ignored during patching, and the next two attributes are ignored.
IgnoreActionData [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_ACTIONDATA messages.
IgnoreActionStart [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_ACTIONSTART messages.
IgnoreAddExistingRow [element Validate]  Ignore errors when adding existing rows.
IgnoreAddExistingTable [element Validate]  Ignore errors when adding existing tables.
IgnoreChangingCodePage [element Validate]  Ignore errors when changing the database code page.
IgnoreCommonData [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_COMMONDATA messages.
IgnoreDeleteMissingRow [element Validate]  Ignore errors when deleting missing rows.
IgnoreDeleteMissingTable [element Validate]  Ignore errors when deleting missing tables.
IgnoreError [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_ERROR messages.
IgnoreFatalExit [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_FATALEXIT messages.
IgnoreFilesInUse [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_FILESINUSE messages.
IgnoreInfo [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_INFO messages.
IgnoreInitialize [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_INITIALIZE messages.
IgnoreMissingFiles [element TargetImage]  Files missing from the target image are ignored by the installer.
IgnoreOutOfDiskSpace [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_OUTOFDISKSPACE messages.
IgnoreParent [element FeatureGroupRef]  Normally feature group references that end up nested under a parent element create a connection to that parent.
IgnoreParent [element FeatureRef]  Normally feature references that are nested under a parent element create a connection to that parent.
IgnoreProgress [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_PROGRESS messages.
IgnoreRemoveFailure [element UpgradeVersion]  Set to "yes" to continue installation upon failure to remove a product or application.
IgnoreResolveSource [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_RESOLVESOURCE messages.
IgnoreRMFilesInUse [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_RMFILESINUSE messages.
IgnoreShowDialog [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_SHOWDIALOG messages.
IgnoreTerminate [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_TERMINATE messages.
IgnoreUpdateMissingRow [element Validate]  Ignore errors when updating missing rows.
IgnoreUser [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_USER messages.
IgnoreWarning [element EmbeddedUI]  Embedded UI will not recieve any INSTALLLOGMODE_WARNING messages.
Image [element Control]  This attribute is only valid for RadioButton, PushButton, and Icon Controls.
Impersonate [element CustomAction]  This attribute specifies whether the Windows Installer, which executes as LocalSystem, should impersonate the user context of the installing user when executing this custom action.
IncludeMaximum [element UpgradeVersion]  Set to "yes" to make the range of versions detected include the value specified in Maximum.
IncludeMinimum [element UpgradeVersion]  Set to "no" to make the range of versions detected exclude the value specified in Minimum.
Indirect [element Control]  Specifies whether the value displayed or changed by this control is referenced indirectly.
Insertable [element Class]  Specifies the CLISD may be insertable.
InstallDefault [element Feature]  This attribute determines the default install/run location of a feature.
InstallerVersion [element Package]  The minimum version of the Windows Installer required to install this package.
InstallPrivileges [element Package]  Use this attribute to specify the priviliges required to install the package on Windows Vista and above.
InstallScope [element Package]  Use this attribute to specify the installation scope of this package: per-machine or per-user.
Integer [element Control]  Set this attribute to "yes" to cause the linked Property value for the Control to be treated as an integer. Otherwise, the Property will be treated as a string.
Interactive [element ServiceInstall]  Whether or not the service interacts with the desktop.
Italic [element TextStyle]   
JScriptCall [element CustomAction]  This attribute specifies the name of the JScript function to execute in a script.
KeepModeless [element Dialog]  Keep modeless dialogs alive when this dialog is created through DoAction.
Key [element IniFile]  The localizable .ini file key within the section.
Key [element IniFileSearch]  The key value within the section.
Key [element Registry]  The localizable key for the registry value.
Key [element RegistryKey]  The localizable key for the registry value.
Key [element RegistrySearch]  Key for the registry value.
Key [element RegistryValue]  The localizable key for the registry value.
Key [element RemoveRegistryKey]  The localizable key for the registry value.
Key [element RemoveRegistryValue]  The localizable key for the registry value.
KeyColumn [element Column]  Column in the table in KeyTable attribute.
KeyNoOrphan [element Configuration]  Does not merge rule according to rules in MSI SDK.
KeyPath [element Component]  If this attribute's value is set to 'yes', then the Directory of this Component is used as the KeyPath.
KeyPath [element File]  Set to yes in order to force this file to be the key path for the parent component.
KeyPath [element ODBCDataSource]  Set 'yes' to force this file to be key path for parent Component
KeyPath [element Registry]  Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.
KeyPath [element RegistryValue]  Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.
KeyTable [element Column]  Table in which this column is an external key.
Keywords [element Package]  Optional keywords for browsing.
Keywords [element PatchInformation]  Optional keywords for browsing
Language [element Merge]  Specifies the decimal LCID or localization token for the language to merge the Module in as.
Language [element Module]  The decimal language ID (LCID) of the merge module.
Language [element Product]  The decimal language ID (LCID) for the product.
Language [element TypeLib]  The language of the type library.
Language [element UpgradeVersion]  Specifies the set of languages detected by FindRelatedProducts.
Languages [element FileSearch]  The languages supported by the file.
Languages [element Package]  The list of language IDs (LCIDs) supported in the package.
Languages [element PatchInformation]  List of language IDs supported in package
Layout [element Media]  This attribute specifies the root directory for the uncompressed files that are a part of this Media element.
LeftScroll [element Control]  Set this attribute to "yes" to cause the scroll bar to display on the left side of the Control.
LeftScroll [element Dialog]  Used to align the scroll bar on the left.
Length [element IgnoreRange]  Length of the range.
Length [element ProtectRange]  Length of the range.
Level [element Condition]  Used only under Feature elements and is required.
Level [element Feature]  Sets the install level of this feature.
LoadOrderGroup [element ServiceInstall]  The load ordering group that this service should be a part of.
Localizable [element Column]  Whether this column can be localized.
LocalService [element AppId]  Set this value to the name of a service to allow the object to be installed as a Win32 service.
Location [element Component]   
LongName [element Directory]   
LongName [element File]   
LongName [element FileSearch]   
LongName [element IniFile]   
LongName [element IniFileSearch]   
LongName [element RemoveFile]   
LongName [element Shortcut]   
LongSource [element Directory]   
MajorVersion [element TypeLib]  The major version of the type library.
Manufacturer [element Package]  The vendor releasing the package.
Manufacturer [element Patch]  Vendor releasing the package
Manufacturer [element PatchInformation]  Vendor releasing the package
Manufacturer [element Product]  The manufacturer of the product.
ManufacturerName [element PatchMetadata]  Name of the manufacturer.
Mask [element FileTypeMask]  Hex value that is AND'd against the bytes in the file at Offset.
MaxDate [element FileSearch]  The maximum modification date and time of the file.
Maximum [element UpgradeVersion]  Specifies the upper boundary of the range of product versions detected by FindRelatedProducts.
MaxSize [element FileSearch]  The maximum size of the file.
MaxValue [element Column]  Maximum value for a numeric value, date or version in this column.
MaxVersion [element FileSearch]  The maximum version of the file.
MediaSrcProp [element Family]  Entered into the Source field of the new Media table entry of the upgraded image.
Message [element Condition]  Used only under Fragment or Product elements and is required.
MigrateFeatures [element UpgradeVersion]  Set to "yes" to migrate feature states from upgraded products by enabling the logic in the MigrateFeatureStates action.
MinDate [element FileSearch]  The minimum modification date and time of the file.
Minimum [element UpgradeVersion]  Specifies the lower bound on the range of product versions to be detected by FindRelatedProducts.
MinorUpdateTargetRTM [element Patch]  Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.
MinorUpdateTargetRTM [element PatchMetadata]  Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.
MinorVersion [element TypeLib]  The minor version of the type library.
MinSize [element FileSearch]  The minimum size of the file.
MinValue [element Column]  Minimum value for a numeric value, date or version in this column.
MinVersion [element FileSearch]  The minimum version of the file.
Modeless [element Dialog]  Used to set the dialog as modeless.
Modularize [element Column]  How this column should be modularized, if at all.
MoreInfoURL [element Patch]  A URL that provides information specific to this patch.
MoreInfoURL [element PatchMetadata]  A URL that provides information specific to this patch.
Multiline [element Control]  This attribute is only valid for Edit Controls.
Name [element Configuration]  Defines the name of the configurable item.
Name [element ConfigurationData]  Key into the ModuleConfiguration table.
Name [element Directory]  The name of the directory.
Name [element EmbeddedUI]  The name for the embedded UI DLL when it is extracted from the Product and executed. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)
Name [element EmbeddedUIResource]  The name for the resource when it is extracted from the Product for use by the embedded UI DLL. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)
Name [element Environment]  Name of the environment variable.
Name [element Family]  Identifier for the family.
Name [element File]  In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.
Name [element FileSearch]  In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.
Name [element IgnoreModularization]  The name of the item to ignore modularization for.
Name [element IniFile]  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
Name [element IniFileSearch]  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
Name [element Interface]  Name for COM Interface.
Name [element ODBCDataSource]  Name for the data source.
Name [element ODBCDriver]  Name for the driver.
Name [element ODBCTranslator]  Name for the translator.
Name [element PatchProperty]  Name of the patch property.
Name [element Product]  The descriptive name of the product.
Name [element Registry]  The localizable registry value name.
Name [element RegistrySearch]  Registry value name.
Name [element RegistryValue]  The localizable registry value name.
Name [element RemoveFile]  This value should be set to the localizable name of the file(s) to be removed.
Name [element RemoveRegistryValue]  The localizable registry value name.
Name [element ServiceControl]  Name of the service.
Name [element ServiceInstall]  This column is the string that gives the service name to install.
Name [element SFPCatalog]  Filename for catalog file when installed.
Name [element Shortcut]  In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.
NeverOverwrite [element Component]  If this attribute is set to 'yes', the installer does not install or reinstall the component if a key path file or a key path registry entry for the component already exists.
NoMinimize [element Dialog]  Used to specify if the dialog can be minimized.
NonNullable [element Configuration]  If yes, null is not a valid entry.
NoOpen [element ProgId]  Specifies that the associated ProgId should not be opened by users.
NoPrefix [element Control]  This attribute is only valid for Text Controls.
Notify [element Permission]   
NoWrap [element Control]  This attribute is only valid for Text Controls.
Nullable [element Column]  Whether this column can be left null.
NumMethods [element Interface]  Number of methods implemented on COM Interface.
Offset [element FileTypeMask]  Offset into file. If positive, offset is from the beginning; if negative, offset is from the end.
Offset [element IgnoreRange]  Offset of the start of the range.
Offset [element ProtectRange]  Offset of the start of the range.
On [element RemoveFile]  This value determines the time at which the file(s) may be removed.
On [element RemoveFolder]  This value determines the time at which the folder may be removed.
OnExit [element Custom]  Mutually exclusive with Before, After, and Sequence attributes
OnExit [element Show]  mutually exclusive with Before, After, and Sequence attributes
OnlyDetect [element UpgradeVersion]  Set to "yes" to detect products and applications but do not uninstall.
OptimizedInstallMode [element Patch]  If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.
OptimizedInstallMode [element PatchMetadata]  If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.
OptimizePatchSizeForLargeFiles [element Patch]  When this attribute is set, patches for files greater than approximately 4 MB in size may be made smaller.
Order [element ExternalFile]  Specifies the order of the external files to use when creating the patch.
Order [element Publish]  This attribute should only need to be set if this element is nested under a UI element in order to control the order in which this publish event will be started.

Order [element TargetImage]  Relative order of the target image.
OutputPath [element PatchCreation]  The full path, including file name, of the patch package file that is to be generated.
Overridable [element Custom]  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Overridable [element Show]  If "yes", the sequencing of this dialog may be overridden by sequencing elsewhere.
Overridable [element WixVariable]  Set this value to 'yes' in order to make the variable's value overridable either by another WixVariable entry or via the command-line option -d<name>=<value> for light.exe.
Overridable [type ActionModuleSequenceType]  If "yes", the sequencing of this action may be overridden by sequencing elsewhere.
Parent [element DirectorySearchRef]  This attribute is the signature of the parent directory of the file or directory in the Signature_ column.
Part [element Environment]   
Password [element Control]  This attribute is only valid for Edit Controls.
Password [element ServiceInstall]  The password for the account. Valid only when the account has a password.
PatchAllowIgnoreOnError [element File]  Set to indicate that the patch is non-vital.
PatchFamily [element PatchSequence]  Identifier which indicates a sequence family to which this patch belongs.
PatchGroup [element File]  This attribute must be set for patch-added files.
PatchIgnore [element File]  Prevents the updating of the file that is in fact changed in the upgraded image relative to the target images.
PatchUninstall [element CustomAction]  This attribute specifies that the Windows Installer, execute the custom action only when a patch is being uninstalled.
PatchWholeFile [element File]  Set if the entire file should be installed rather than creating a binary patch.
Path [element DirectorySearch]  Path on the user's system. Either absolute, or relative to containing directories.
Path [element DirectorySearchRef]  Path on the user's system. Either absolute, or relative to containing directories.
Path [element SymbolPath]  The path.
Permanent [element Component]  If this attribute is set to 'yes', the installer does not remove the component during an uninstall.
Permanent [element Environment]  Specifies that the environment variable should not be removed on uninstall.
Platform [element Package]  The platform supported by the package.
Platforms [element Package]   
Platforms [element PatchInformation]  List of platforms supported in package
Primary [element ComponentGroupRef]  Set this attribute to 'yes' in order to make the parent feature of this component the primary feature for this component.
Primary [element ComponentRef]  Set this attribute to 'yes' in order to make the parent feature of this component the primary feature for this component.
Primary [element FeatureGroupRef]  Set this attribute to 'yes' in order to make the parent feature of this group the primary feature for any components and merges contained in the group.
Primary [element MergeRef]  Specifies whether the feature containing this MergeRef is the primary feature for advertising the merge module's components.
PrimaryKey [element Column]  Whether this column is a primary key.
ProcessorArchitecture [element File]  Specifies the architecture for this assembly.
ProductCode [element Instance]  The ProductCode for this instance.
ProductCode [element PatchFamily]  Specifies the ProductCode of the product that this family applies to.
ProductCode [element PatchSequence]  Specifies the ProductCode of the product that this family applies to.
ProductId [element Validate]  Requires that the upgrade ProductCode match the target ProductCode.
ProductLanguage [element Validate]  Requires that the upgrade ProductLanguage match the target ProductLanguage.
ProductName [element Instance]  The ProductName for this instance.
ProductVersion [element Validate]  Determines how many fields in the ProductVersion to check.
ProductVersionOperator [element Validate]  Determines how the target and upgrade ProductVersions are compared.
Programmable [element Class]  Specifies the CLSID may be programmable.
ProgressBlocks [element Control]  This attribute is only valid for ProgressBar Controls.
Property [element ComboBox]  Property tied to this group
Property [element Control]  The name of a defined property to be linked to this control.
Property [element CustomAction]  This attribute specifies a reference to a Property element with matching Id attribute that specifies the Property to be used or updated on execution of this custom action.
Property [element CustomProperty]  The name of the metadata property.
Property [element InstanceTransforms]  The Id of the Property who's value should change for each instance.
Property [element ListBox]  Property tied to this group
Property [element ListView]  Property tied to this group
Property [element Publish]  Set this attribute's value to a property name to set that property.
Property [element RadioButtonGroup]  Property tied to this group.
Property [element RemoveFile]  Overrides the directory of the parent component with the value of the specified property.
Property [element RemoveFolder]  Overrides the directory of the parent component with the value of the specified property.
Property [element UpgradeVersion]  When the FindRelatedProducts action detects a related product installed on the system, it appends the product code to the property specified in this field.
PropertySource [element EmbeddedChainer]  Reference to a Property that resolves to the full path to the chainer executeable.
ProxyStubClassId [element Interface]  GUID CLSID for proxy stub to COM Interface.
ProxyStubClassId32 [element Interface]  GUID CLSID for 32-bit proxy stub to COM Interface.
PushLike [element Control]  This attribute is only valid for RadioButton and Checkbox Controls.
Qualifier [element Category]  A text string that qualifies the value in the Id attribute.
RAMDisk [element Control]  This attribute is only valid for Volume and Directory Controls.
Read [element Permission]   
ReadAttributes [element Permission]   
ReadExtendedAttributes [element Permission]   
ReadOnly [element File]  Set to yes in order to have the file's read-only attribute set when it is installed on the target machine.
ReadOnly [element Package]  The value of this attribute conveys whether the package should be opened as read-only.
ReadOnly [element PatchInformation]  The value of this attribute conveys whether the package should be opened as read-only.
ReadPermission [element Permission]   
Red [element TextStyle]  0 to 255
Registration [element ODBCDataSource]  Scope for which the data source should be registered.
RelativePath [element Class]  When the value is "yes", the bare file name can be used for COM servers.
Remote [element Control]  This attribute is only valid for Volume and Directory Controls.
RemoteServerName [element AppId]  Set this value to the name of the remote server to configure the client to request the object be run at a particular machine whenever an activation function is called for which a COSERVERINFO structure is not specified.
Removable [element Control]  This attribute is only valid for Volume and Directory Controls.
Remove [element ServiceControl]  Specifies whether the service should be removed on install, uninstall or both.
RemoveFeatures [element UpgradeVersion]  The installer sets the REMOVE property to features specified in this column.
RequiredId [element Dependency]  Identifier of the merge module required by the merge module.
RequiredLanguage [element Dependency]  Numeric language ID of the merge module in RequiredID.
RequiredVersion [element Dependency]  Version of the merge module in RequiredID.
RequiredVersion [element Wix]  Required version of the WiX toolset to compile this input file.
ResourceId [element TypeLib]  The resource id of a typelib.
Restricted [element TypeLib]  Value of 'yes' means the type library is restricted, and should not be displayed to users.
Return [element CustomAction]  Set this attribute to set the return behavior of the custom action.
RightAligned [element Control]  Set this attribute to "yes" to cause the Control to be right aligned.
RightAligned [element Dialog]  Align text on the right.
RightToLeft [element Control]  Set this attribute to "yes" to cause the Control to display from right to left.
RightToLeft [element Dialog]  Used to specify if the text in the dialog should be displayed in right to left reading order.
Root [element Registry]  The predefined root key for the registry value.
Root [element RegistryKey]  The predefined root key for the registry value.
Root [element RegistrySearch]  Root key for the registry value.
Root [element RegistryValue]  The predefined root key for the registry value.
Root [element RemoveRegistryKey]  The predefined root key for the registry value.
Root [element RemoveRegistryValue]  The predefined root key for the registry value.
Row [element Substitution]  Specifies the primary keys of the target row in the table named in the Table column.
RunAsInteractiveUser [element AppId]  Set this value to 'yes' to configure a class to run under the identity of the user currently logged on and connected to the interactive desktop when activated by a remote client without being written as a Win32 service.
RunFromSource [element ReserveCost]  The number of bytes of disk space to reserve if the component is installed to run from source.
RunLocal [element ReserveCost]  The number of bytes of disk space to reserve if the component is installed to run locally.
SafeForInitializing [element Class]  May only be specified if the value of the Advertise attribute is "no".
SafeForScripting [element Class]  May only be specified if the value of the Advertise attribute is "no".
Script [element CustomAction]  Creates a type 37 or 38 custom action.
Section [element IniFile]  The localizable .ini file section.
Section [element IniFileSearch]  The localizable .ini file section.
Secure [element Property]  Denotes that the Property can be passed to the server side when doing a managed installation with elevated privileges.
SelfRegCost [element File]  The cost of registering the file in bytes.
Separator [element Environment]  Optional attribute to change the separator used between values.
Sequence [element Custom]  The sequence number for this action.
Sequence [element PatchSequence]  Used to populate the sequence column of the MsiPatchSequence table in the final MSP file.
Sequence [element SetDirectory]  Controls which sequences the Directory assignment is sequenced in.
Sequence [element SetProperty]  Controls which sequences the Property assignment is sequenced in.
Sequence [element Show]   
Sequence [element Verb]  The sequence of the commands.
Sequence [type ActionModuleSequenceType]  A value used to indicate the position of this action in a sequence.
Sequence [type ActionSequenceType]  A value used to indicate the position of this action in a sequence.
SequenceStart [element Family]  Sequence number for the starting file.
Server [element Class]  May only be specified if the value of the Advertise attribute is "no".
ServiceParameters [element AppId]  Set this value to the parameters to be passed to a LocalService on invocation.
Set [element Column]  Semicolon delimited list of permissible values.
SetupFile [element ODBCDriver]  Required if not found as child of File element or different from File attribute above
SetupFile [element ODBCTranslator]  Required if not found as child of File element or different from File attribute above
Shared [element Component]  If this attribute's value is set to 'yes', enables advanced patching semantics for Components that are shared across multiple Products.
Shared [element IsolateComponent]  Shared Component for this application Component.
SharedDllRefCount [element Component]  If this attribute's value is set to 'yes', the installer increments the reference count in the shared DLL registry of the component's key file.
ShortName [element Directory]  The short name of the directory in 8.3 format.
ShortName [element File]  The short file name of the file in 8.3 format.
ShortName [element FileSearch]  The short file name of the file in 8.3 format.
ShortName [element IniFile]  The short name of the in 8.3 format.
ShortName [element IniFileSearch]  The short name of the file in 8.3 format.
ShortName [element RemoveFile]  The short file name of the file in 8.3 format.
ShortName [element Shortcut]  The short name of the shortcut in 8.3 format.
ShortNames [element Package]  Set to 'yes' to have short filenames in the source.
ShortNames [element PatchInformation]  Short filenames on source
ShortPath [element Class]  Specifies whether or not to use the short path for the COM server.
ShortSourceName [element Directory]  The short name of the directory on the source media in 8.3 format.
Show [element Shortcut]   
ShowRollbackCost [element Control]  This attribute is only valid for VolumeCostList Controls.
Size [element TextStyle]   
SkipAssignment [element OptimizeCustomActions]  Skip property (type 51) and directory (type 35) assignment custom actions.
SkipDeferred [element OptimizeCustomActions]  Skip custom actions that run within the script.
SkipImmediate [element OptimizeCustomActions]  Skip immediate custom actions that are not property or directory assignment custom actions.
Sorted [element Control]  This attribute is only valid for Listbox, ListView, and ComboBox Controls.
Source [element ExternalFile]  Full path of the external file.
Source [element File]  Specifies the path to the File in the build process.
Source [element Media]  Optional property that identifies the source of the embedded cabinet.
SourceDirectory [element CopyFile]  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
SourceFile [element Binary]  Path to the binary file.
SourceFile [element DigitalCertificate]  The path to the certificate file.
SourceFile [element DigitalSignature]  The path to signature's optional hash file.
SourceFile [element EmbeddedUI]  Path to the binary file that is the embedded UI.
SourceFile [element EmbeddedUIResource]  Path to the binary file that is the embedded UI resource.
SourceFile [element Icon]  Path to the icon file.
SourceFile [element Merge]  Path to the source location of the merge module.
SourceFile [element SFPCatalog]  Path to catalog file in binary.
SourceFile [element TargetImage]  Full path to the location of the msi file for the target image.
SourceFile [element Text]  Instructs the text to be imported from a file instead of the element value during the binding process.
SourceFile [element UpgradeImage]  Full path to location of msi file for upgraded image.
SourceList [element PatchCreation]  Used to locate the .msp file for the patch if the cached copy is unavailable.
SourceName [element CopyFile]  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
SourceName [element Directory]  The name of the directory on the source media.
SourcePatch [element UpgradeImage]  Modified copy of the upgraded installation database that contains additional authoring specific to patching.
SourceProperty [element CopyFile]  This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.
src [element Binary]   
src [element Directory]   
src [element DirectoryRef]   
src [element ExternalFile]   
src [element File]   
src [element Icon]   
src [element Media]   
src [element Merge]   
src [element TargetImage]   
src [element Text]   
src [element UpgradeImage]   
srcPatch [element UpgradeImage]   
Start [element ServiceControl]  Specifies whether the service should be started on install, uninstall or both.
Start [element ServiceInstall]  Determines when the service should be started.
Stop [element ServiceControl]  Specifies whether the service should be stopped on install, uninstall or both.
Strike [element TextStyle]   
SummaryCodepage [element Package]  The code page integer value or web name for summary info strings only.
SummaryCodepage [element PatchInformation]  The code page integer value or web name for summary info strings only.
Sunken [element Control]  Set this attribute to "yes" to cause the Control to be sunken.
Supersede [element PatchFamily]  Set this value to 'yes' to indicate that this patch will supersede all previous patches in this patch family.
Supersede [element PatchSequence]  Set this value to 'yes' to indicate that this patch will supersede all previous patches in this patch family.
SupportBasicUI [element EmbeddedUI]  Set yes to allow the Windows Installer to display the embedded UI during basic UI level installation.
Suppress [type ActionModuleSequenceType]  If yes, this action will not occur.
Suppress [type ActionSequenceType]  If yes, this action will not occur.
SuppressModularization [element Binary]  Use to suppress modularization of this Binary identifier in merge modules.
SuppressModularization [element CustomAction]  Use to suppress modularization of this custom action name in merge modules.
SuppressModularization [element Property]  Use to suppress modularization of this property identifier in merge modules.

SymbolFlags [element PatchCreation]  An 8-digit hex integer representing the combination of patch symbol usage flags to use when creating a binary file patch.
Synchronize [element Permission]   
System [element Environment]  Specifies that the environment variable should be added to the system environment space.
System [element File]  Set to yes in order to have the file's system attribute set when it is installed on the target machine.
SystemModal [element Dialog]  Used to set the dialog as system modal.
Table [element Substitution]  Specifies the name of the table being modified in the module database.
TabSkip [element Control]  Set this attribute to "yes" to cause this Control to be skipped in the tab sequence.
TakeOwnership [element Permission]   
Target [element PatchSequence]   
Target [element Shortcut]  This attribute can only be set if this Shortcut element is nested under a Component element.

Target [element Verb]   
TargetFile [element Verb]  Either this attribute or the TargetProperty attribute must be specified for a non-advertised verb.
TargetImage [element PatchSequence]  Specifies the TargetImage that this family applies to.
TargetProductName [element Patch]  Name of the application or target product suite.
TargetProductName [element PatchMetadata]  Name of the application or target product suite.
TargetProperty [element Verb]  Either this attribute or the TargetFile attribute must be specified for a non-advertised verb.
Template [element ProgressText]  used to format ActionData messages from action processing
TerminalServerAware [element CustomAction]  This attribute specifies controls whether the custom action will impersonate the installing user during per-machine installs on Terminal Server machines.

Text [element Control]  A localizable string used to set the initial text contained in a control.
Text [element ListItem]  The localizable, visible text to be assigned to the item.
Text [element RadioButton]  Text displayed with the radio button.
ThreadingModel [element Class]  Threading model for the CLSID.
Title [element Dialog]  The title of the dialog box.
Title [element Feature]  Short string of text identifying the feature.
ToolTip [element Control]  The string used for the Tooltip.
ToolTip [element RadioButton]   
TrackDiskSpace [element Dialog]  Have the dialog periodically call the installer to check if available disk space has changed.
Transitive [element Component]  If this attribute is set to 'yes', the installer reevaluates the value of the statement in the Condition upon a reinstall.
Transparent [element Control]  This attribute is only valid for Text Controls.
Traverse [element Permission]  For a directory, the right to traverse the directory.
TrueType [element File]  Causes an entry to be generated for the file in the Font table with no FontTitle specified.
Type [element Column]  The type of this column.
Type [element ComponentSearch]  Must be file if last child is FileSearch element and must be directory if last child is DirectorySearch element.
Type [element Configuration]  Specifies the type of the data being changed.
Type [element Control]  The type of the control.
Type [element IgnoreModularization]  The type of the item to ignore modularization for.
Type [element IniFileSearch]  Must be file if last child is FileSearch element and must be directory if last child is DirectorySearch element.
Type [element Registry]  Set this attribute to the type of the desired registry key.
Type [element RegistrySearch]  The value must be 'file' if the last child is a FileSearch element and must be 'directory' if last child is a DirectorySearch element.
Type [element RegistryValue]  Set this attribute to the type of the desired registry key.
Type [element ServiceInstall]  The Windows Installer does not currently support kernelDriver or systemDriver
TypicalDefault [element Feature]  This attribute determines the default advertise state of the feature.
Underline [element TextStyle]   
UninstallWhenSuperseded [element Component]  If this attribute is set to 'yes', the installer will uninstall the Component's files and registry keys when it is superseded by a patch.
UpgradeCode [element Product]  The upgrade code GUID for the product.
UpgradeCode [element Validate]  Requires that the upgrade UpgradeCode match the target UpgradeCode.
User [element Permission]   
UserLanguage [element Control]  This attribute is only valid for Text Controls.
Validation [element TargetImage]  Product checking to avoid applying irrelevant transforms.
Value [element AssemblyName]  Value associated with the name specified in the Name column.
Value [element ConfigurationData]  Value to be passed to configurable merge module.
Value [element CustomAction]  This attribute specifies a string value to use in the custom action.
Value [element CustomProperty]  Value of the metadata property.
Value [element Environment]  The value to set into the environment variable.
Value [element FileTypeMask]  If the result of the AND'ing of Mask with the bytes in the file is Value, the file is a match for this File Type.
Value [element IniFile]  The localizable value to be written or deleted. This attribute must be set if the Action attribute's value is "addLine", "addTag", or "createLine".
Value [element ListItem]  The value assigned to the associated ComboBox, ListBox, or ListView property if this item is selected.
Value [element PatchProperty]  Value of the patch property.
Value [element Property]  Sets a default value for the property. The value will be overwritten if the Property is used for a search.
Value [element Publish]  If the Property attribute is specified, set the value of this attribute to the new value for the property.
Value [element RadioButton]  Value assigned to the associated control Property when this radio button is selected.
Value [element Registry]  Set this attribute to the localizable registry value. This value is formatted.
Value [element RegistryValue]  Set this attribute to the localizable registry value.
Value [element SetDirectory]  This attribute specifies a string value to assign to the Directory.
Value [element SetProperty]  This attribute specifies a string value to assign to the Property.
Value [element Substitution]  Provides a formatting template for the data being substituted into the target field specified by Table, Row, and Column.
Value [element WixVariable]  The value of the variable.
VBScriptCall [element CustomAction]  This attribute specifies the name of the VBScript Subroutine to execute in a script.
Version [element Class]  Version for the CLSID.
Version [element Module]  The major and minor versions of the merge module.
Version [element PatchFamily]  Used to populate the sequence column of the MsiPatchSequence table in the final MSP file.
Version [element Product]  The product's version string.
Versioned [element Interface]  Determines whether a Typelib version entry should be created with the other COM Interface registry keys.
Vital [element File]  If a file is vital, then installation cannot proceed unless the file is successfully installed.
Vital [element ServiceInstall]  The overall install should fail if this service fails to install.
VolumeLabel [element Family]  Entered into the VolumeLabel field of the new Media table record.
VolumeLabel [element Media]  The label attributed to the volume.
Wait [element ServiceControl]  Specifies whether or not to wait for the service to complete before continuing.
WholeFile [element UpgradeFile]  Whether the whole file should be installed, rather than creating a binary patch.
WholeFilesOnly [element PatchCreation]  Use this to set whether changing files should be included in their entirety.
Width [element Column]  Width of this column.
Width [element Control]  Width of the rectangular boundary of the control.
Width [element Dialog]  The width of the dialog box in dialog units.
Width [element RadioButton]   
Win64 [element Component]  Set this attribute to 'yes' to mark this as a 64-bit component.
Win64 [element CustomAction]  Specifies that a script custom action targets a 64-bit platform.
Win64 [element RegistrySearch]  Instructs the search to look in the 64-bit registry when the value is 'yes'.
WorkingDirectory [element Shortcut]  Directory identifier (or Property identifier that resolves to a directory) that resolves to the path of the working directory for the shortcut.
Write [element Permission]   
WriteAttributes [element Permission]   
WriteExtendedAttributes [element Permission]   
X [element Control]  Horizontal coordinate of the upper-left corner of the rectangular boundary of the control.
X [element Dialog]  Horizontal placement of the dialog box as a percentage of screen width.
X [element RadioButton]   
Y [element Control]  Vertical coordinate of the upper-left corner of the rectangular boundary of the control.
Y [element Dialog]  Vertical placement of the dialog box as a percentage of screen height.
Y [element RadioButton]   

Attribute: Absent [element Feature]

Description

This attribute determines if a user will have the option to set a feature to absent in the user interface.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
allow  Allows the user interface to display an option to change the feature state to Absent.
disallow  Prevents the user interface from displaying an option to change the feature state
to Absent by setting the msidbFeatureAttributesUIDisallowAbsent attribute. This will force the feature
to the installation state, whether or not the feature is visible in the UI.

Attribute: Account [element ServiceInstall]

Description

The acount under which to start the service. Valid only when ServiceType is ownProcess.

Derived By

Type string

Attribute: Action [element Condition]

Description

Used only under Control elements and is required. Allows specific actions to be applied to a control based on the result of this condition.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
default  Set the Control as the default. Only used under Control elements.
enable  Enable the Control. Only used under Control elements.
disable  Disable the Control. Only used under Control elements.
hide  Hide the Control. Only used under Control elements.
show  Display the Control. Only used under Control elements.

Attribute: Action [element Custom]

Description

The action to which the Custom element applies.

Derived By

Type string

Attribute: Action [element Environment]

Description

Specfies whether the environmental variable should be created, set or removed when the parent component is installed.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
create  Creates the environment variable if it does not exist, then set it during installation. This has no effect on the value of the environment variable if it already exists.
set  Creates the environment variable if it does not exist, and then set it during installation. If the environment variable exists, set it during the installation.
remove  Removes the environment variable during an installation.
The installer only removes an environment variable during an installation if the name and value
of the variable match the entries in the Name and Value attributes.
If you want to remove an environment variable, regardless of its value, do not set the Value attribute.

Attribute: Action [element IniFile]

Description

The type of modification to be made.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
addLine  Creates or updates an .ini entry.
addTag  Creates a new entry or appends a new comma-separated value to an existing entry.
createLine  Creates an .ini entry only if the entry does no already exist.
removeLine  Removes an .ini entry.
removeTag  Removes a tag from an .ini entry.

Attribute: Action [element ProgressText]

Derived By

Type string

Attribute: Action [element Registry]

Description

This is the action that will be taken for this registry key.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
append  Appends the specified value(s) to a multiString registry key.
createKey  Creates the key, if absent, when the parent component is installed.
createKeyAndRemoveKeyOnUninstall  Creates the key, if absent, when the parent component is installed then remove the key with all its values and subkeys when the parent component is uninstalled.
prepend  Prepends the specified value(s) to a multiString registry key.
remove  Removes a registry name when the parent component in installed.
removeKeyOnInstall  Removes a key with all its values and subkeys when the parent component is installed.
removeKeyOnUninstall  Removes a key with all its values and subkeys when the parent component is uninstalled.
write  Writes a registry value.

Attribute: Action [element RegistryKey]

Description

This is the action that will be taken for this registry value.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
create  Creates the key, if absent, when the parent component is installed.
createAndRemoveOnUninstall  Creates the key, if absent, when the parent component is installed then remove the key with all its values and subkeys when the parent component is uninstalled.
none  Does nothing; this element is used merely in WiX authoring for organization and does nothing to the final output.
This is the default value.

Attribute: Action [element RegistryValue]

Description

This is the action that will be taken for this registry value.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
append  Appends the specified value(s) to a multiString registry value.
prepend  Prepends the specified value(s) to a multiString registry value.
write  Writes a registry value. This is the default value.

Attribute: Action [element RemoveRegistryKey]

Description

This is the action that will be taken for this registry value.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
removeOnInstall  Removes a key with all its values and subkeys when the parent component is installed.
removeOnUninstall  Removes a key with all its values and subkeys when the parent component is uninstalled.

Attribute: ActivateAtStorage [element AppId]

Description

Set this value to 'yes' to configure the client to activate on the same system as persistent storage.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Admin [element Property]

Description

Denotes that the Property is saved during

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

<html:a href="http://msdn.microsoft.com/library/aa367541.aspx" target="_blank" xmlns:html="http://www.w3.org/1999/xhtml">admininistrative installation</html:a>

. See the

<html:a href="http://msdn.microsoft.com/library/aa367542.aspx" target="_blank" xmlns:html="http://www.w3.org/1999/xhtml">AdminProperties Property</html:a>

for more information.

Attribute: AdminImage [element Package]

Description

Set to 'yes' if the source is an admin image.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: AdminImage [element PatchInformation]

Description

Source is an admin image

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Advertise [element AppId]

Description

Set this value to 'yes' in order to create a normal AppId table row. Set this value to 'no' in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Advertise [element Class]

Description

Set this value to "yes" in order to create a normal Class table row. Set this value to "no" in order to generate Registry rows that perform similar registration (without the often problematic Windows Installer advertising behavior).

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Advertise [element Extension]

Description

Whether this extension is to be advertised. The default is "no".

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Advertise [element MIME]

Description

Whether this MIME is to be advertised.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is to match whatever the parent extension element uses. If the parent element is not advertised, then this element cannot be advertised either.

Attribute: Advertise [element ProgId]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Advertise [element Shortcut]

Description

Specifies if the shortcut should be advertised or not.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Note that advertised shortcuts always point at a particular application, identified by a ProductCode, and should not be shared between applications. Advertised shortcuts only work for the most recently installed application, and are removed when that application is removed. The default value is 'no'.

Attribute: Advertise [element TypeLib]

Description

Value of 'yes' will create a row in the TypeLib table. Value of 'no' will create rows in the Registry table.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default value is 'no'.

Attribute: After [element Custom]

Description

The name of the standard or custom action after which this action should be performed.

Derived By

Type string

Remarks

Mutually exclusive with Before, OnExit, and Sequence attributes

Attribute: After [element SetProperty]

Description

The name of the standard or custom action after which this action should be performed.

Derived By

Type string

Remarks

Mutually exclusive with the Before attribute. A Before or After attribute is required when setting a Property.

Attribute: After [element Show]

Derived By

Type string

Attribute: After [type ActionModuleSequenceType]

Description

The name of an action that this action should come after.

Derived By

Type string

Attribute: AllowAdvertise [element Feature]

Description

This attribute determins the possible advertise states for this feature.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
no  Prevents this feature from being advertised by settting the msidbFeatureAttributesDisallowAdvertise attribute.
system  Prevents advertising for this feature if the operating system shell does not support Windows Installer
descriptors by setting the msidbFeatureAttributesNoUnsupportedAdvertise attribute.
yes  Allows the feature to be advertised.

Attribute: AllowIgnoreOnError [element UpgradeFile]

Description

Specifies whether patching this file is vital.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: AllowMajorVersionMismatches [element PatchCreation]

Description

Use this to set whether the major versions between the upgrade and target images match.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

See AllowProductVersionMajorMismatches for more information.

Attribute: AllowProductCodeMismatches [element PatchCreation]

Description

Use this to set whether the product code between the upgrade and target images match.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

See AllowProductCodeMismatches for more information.

Attribute: AllowRemoval [element Patch]

Description

Whether this is an uninstallable patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: AllowRemoval [element PatchMetadata]

Description

Whether this is an uninstallable patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: ApiPatchingSymbolNoFailuresFlag [element Patch]

Description

Flag used when creating a binary file patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Default is "no". Don't fail patch due to imagehlp failures.

Attribute: ApiPatchingSymbolNoImagehlpFlag [element Patch]

Description

Flag used when creating a binary file patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Default is "no". Don't use imagehlp.dll.

Attribute: ApiPatchingSymbolUndecoratedTooFlag [element Patch]

Description

Flag used when creating a binary file patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Default is "no". After matching decorated symbols, try to match remaining by undecorated names.

Attribute: AppData [element Category]

Description

An optional localizable text describing the category.

Derived By

Type string

Remarks

The string is commonly parsed by the application and can be displayed to the user. It should describe the category.

Attribute: Append [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: AppId [element Class]

Description

This attribute is only allowed when a Class is advertised.

Derived By

Type Guid

Remarks

Using this attribute will reference an Application ID containing DCOM information for the associated application GUID. The value must correspond to an AppId/@Id of an AppId element nested under a Fragment, Module, or Product element. To associate an AppId with a non-advertised class, nest the class within a parent AppId element.

Attribute: Argument [element Class]

Description

This column is optional only when the Context column is set to "LocalServer" or "LocalServer32" server context.

Derived By

Type string

Remarks

The text is registered as the argument against the OLE server and is used by OLE for invoking the server. Note that the resolution of properties in the Argument field is limited. A property formatted as [Property] in this field can only be resolved if the property already has the intended value when the component owning the class is installed. For example, for the argument "[#MyDoc.doc]" to resolve to the correct value, the same process must be installing the file MyDoc.doc and the component that owns the class.

Attribute: Argument [element Verb]

Description

Value for the command arguments.

Derived By

Type string

Remarks

Note that the resolution of properties in the Argument field is limited. A property formatted as [Property] in this field can only be resolved if the property already has the intended value when the component owning the verb is installed. For example, for the argument "[#MyDoc.doc]" to resolve to the correct value, the same process must be installing the file MyDoc.doc and the component that owns the verb.

Attribute: Arguments [element ServiceInstall]

Description

Contains any command line arguments or properties required to run the service.

Derived By

Type string

Attribute: Arguments [element Shortcut]

Description

The command-line arguments for the shortcut.

Derived By

Type string

Remarks

Note that the resolution of properties in the Arguments field is limited. A property formatted as [Property] in this field can only be resolved if the property already has the intended value when the component owning the shortcut is installed. For example, for the argument "[#MyDoc.doc]" to resolve to the correct value, the same process must be installing the file MyDoc.doc and the component that owns the shortcut.

Attribute: Assembly [element File]

Description

Specifies if this File is a Win32 Assembly or .NET Assembly that needs to be installed into the Global Assembly Cache.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
.net  The file is a .NET Framework assembly.
no  The file is not a .NET Framework or Win32 assembly. This is the default value.
win32  The file is a Win32 assembly.

Remarks

If the value is '.net' or 'win32', this file must also be the key path of the Component.

Attribute: AssemblyApplication [element File]

Description

Specifies the file identifier of the application file.

Derived By

Type string

Remarks

This assembly will be isolated to the same directory as the application file. If this attribute is absent, the assembly will be installed to the Global Assembly Cache. This attribute may only be specified if the Assembly attribute is set to '.net' or 'win32'.

Attribute: AssemblyManifest [element File]

Description

Specifies the file identifier of the manifest file that describes this assembly.

Derived By

Type string

Remarks

The manifest file should be in the same component as the assembly it describes. This attribute may only be specified if the Assembly attribute is set to '.net' or 'win32'.

Attribute: AssignToProperty [element DirectorySearch]

Description

Set the result of this search to the value of the outer Property.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: AssignToProperty [element DirectorySearchRef]

Description

Set the result of this search to the value of the outer Property.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Attribute [element Subscribe]

Description

if not present can only handle enable, disable, hide, unhide events

Derived By

Type string

Attribute: Before [element Custom]

Description

The name of the standard or custom action before which this action should be performed. Mutually exclusive with OnExit, After, and Sequence attributes

Derived By

Type string

Attribute: Before [element SetProperty]

Description

The name of the standard or custom action before which this action should be performed.

Derived By

Type string

Remarks

Mutually exclusive with the After attribute. A Before or After attribute is required when setting a Property.

Attribute: Before [element Show]

Derived By

Type string

Attribute: Before [type ActionModuleSequenceType]

Description

The name of an action that this action should come before.

Derived By

Type string

Attribute: BinaryKey [element CustomAction]

Description

This attribute is a reference to a Binary element with matching Id attribute.

Derived By

Type string

Remarks

That binary stream contains the custom action for use during install. The custom action will not be installed into a target directory. This attribute is typically used with the DllEntry attribute to specify the custom action DLL to use for a type 1 custom action, with the ExeCommand attribute to specify a type 17 custom action that runs an embedded executable, or with the VBScriptCall or JScriptCall attributes to specify a type 5 or 6 custom action.

Attribute: BinarySource [element EmbeddedChainer]

Description

Reference to the Binary element that contains the chainer executeable.

Derived By

Type string

Remarks

Mutually exclusive with the FileSource and PropertySource attributes.

Attribute: BindPath [element File]

Description

A list of paths, separated by semicolons, that represent the paths to be searched to find the imported DLLs.

Derived By

Type string

Remarks

The list is usually a list of properties, with each property enclosed inside square brackets. The value may be set to an empty string. Including this attribute will cause an entry to be generated for the file in the BindImage table.

Attribute: Bitmap [element Control]

Description

This attribute is only valid for RadioButton and PushButton Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Bitmap [element RadioButton]

Description

This attribute defines the bitmap displayed with the radio button.

Derived By

Type string

Remarks

The value of the attribute creates a reference to a Binary element that represents the bitmap. This attribute is mutually exclusive with the Icon and Text attributes.

Attribute: Blue [element TextStyle]

Description

0 to 255

Derived By

Type integer

Attribute: Bold [element TextStyle]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Cabinet [element Media]

Description

The name of the cabinet if some or all of the files stored on the media are in a cabinet file.

Derived By

Type string

Remarks

If no cabinets are used, this attribute must not be set.

Attribute: Cancel [element Control]

Description

Set this attribute to "yes" to cause this Control to be invoked by the escape key.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Category [element Column]

Description

Category of this column.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
Text   
UpperCase   
LowerCase   
Integer   
DoubleInteger   
TimeDate   
Identifier   
Property   
Filename   
WildCardFilename   
Path   
Paths   
AnyPath   
DefaultDir   
RegPath   
Formatted   
Template   
Condition   
Guid   
Version   
Language   
Binary   
CustomSource   
Cabinet   
Shortcut   

Remarks

This attribute must be specified with a value of 'Binary' if the Type attribute's value is 'binary'.

Attribute: CDROM [element Control]

Description

This attribute is only valid for Volume and Directory Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: ChangePermission [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: CheckBoxValue [element Control]

Description

This attribute is only valid for CheckBox Controls.

Derived By

Type string

Remarks

When set, the linked Property will be set to this value when the check box is checked.

Attribute: Checksum [element File]

Description

This attribute should be set to "yes" for every executable file in the installation that has a valid checksum stored in the Portable Executable (PE) file header.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only those files that have this attribute set will be verified for valid checksum during a reinstall.

Attribute: Class [element MIME]

Description

Class ID for the COM server that is to be associated with the MIME content.

Derived By

Type Guid

Attribute: Classification [element Patch]

Description

Category of updates.

Derived By

Type PatchClassificationType

Enumeration

Value  Description 
Critical Update  A broadly released fix for a specific problem addressing a critical, non-security related bug.
Hotfix  Hotfixes address a specific customer situation and generally should not be distributed outside the customer's organization.
Security Rollup  A broadly released fix for a specific security-related related vulnerability.
Service Pack  A cumulative set of all hotfixes, security rollups, critical updates, and updates, as well as additional fixes and even new features found since the release of the product.
Update  A broadly released fix for a specific problem addressing a non-critical, non-security related bug.
Update Rollup  A cumulative set of hotfixes, security rollups, critical updates, and updates packaged together which typically targets a specific area of a product.

Attribute: Classification [element PatchMetadata]

Description

Category of update.

Derived By

Type PatchClassificationType

Enumeration

Value  Description 
Critical Update  A broadly released fix for a specific problem addressing a critical, non-security related bug.
Hotfix  Hotfixes address a specific customer situation and generally should not be distributed outside the customer's organization.
Security Rollup  A broadly released fix for a specific security-related related vulnerability.
Service Pack  A cumulative set of all hotfixes, security rollups, critical updates, and updates, as well as additional fixes and even new features found since the release of the product.
Update  A broadly released fix for a specific problem addressing a non-critical, non-security related bug.
Update Rollup  A cumulative set of hotfixes, security rollups, critical updates, and updates packaged together which typically targets a specific area of a product.

Attribute: CleanWorkingFolder [element PatchCreation]

Description

Use this to set whether Patchwiz should clean the temp folder when finished.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

See DontRemoveTempFolderWhenFinished for more information.

Attribute: ClientPatchId [element Patch]

Description

An easily referenced identity unique to a patch that can be used in product authoring.

Derived By

Type string

Remarks

See remarks for more information.

Attribute: Codepage [element Module]

Description

The code page integer value or web name for the resulting MSM.

Derived By

Type string

Remarks

See remarks for more information.

Attribute: Codepage [element Patch]

Description

The code page integer value or web name for the resulting MSP.

Derived By

Type string

Remarks

See remarks for more information.

Attribute: Codepage [element PatchCreation]

Description

The code page integer value or web name for the resulting PCP.

Derived By

Type string

Remarks

See remarks for more information.

Attribute: Codepage [element Product]

Description

The code page integer value or web name for the resulting MSI. See remarks for more information.

Derived By

Type string

Attribute: Column [element Data]

Description

Specifies in which column to insert this data.

Derived By

Type string

Attribute: Column [element Substitution]

Description

Specifies the target column in the row named in the Row column.

Derived By

Type string

Attribute: ComboList [element Control]

Description

This attribute is only valid for ComboBox Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Command [element Verb]

Description

The localized text displayed on the context menu.

Derived By

Type string

Attribute: CommandLine [element EmbeddedChainer]

Description

Value to append to the transaction handle and passed to the chainer executable.

Derived By

Type string

Attribute: Comments [element Package]

Description

Optional comments for browsing.

Derived By

Type string

Attribute: Comments [element PatchInformation]

Description

Optional comments for browsing

Derived By

Type string

Attribute: CompanionFile [element File]

Description

Set this attribute to make this file a companion child of another file.

Derived By

Type string

Remarks

The installation state of a companion file depends not on its own file versioning information, but on the versioning of its companion parent. A file that is the key path for its component can not be a companion file (that means this attribute cannot be set if KeyPath="yes" for this file). The Version attribute cannot be set along with this attribute since companion files are not installed based on their own version.

Attribute: Company [element CustomProperty]

Description

The name of the company.

Derived By

Type string

Attribute: Company [element PatchProperty]

Description

Name of the company for a custom metadata property.

Derived By

Type string

Attribute: ComplianceCheck [element Property]

Description

Adds a row to the CCPSearch table. This attribute is only valid when this Property contains a search element.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: ComPlusFlags [element Component]

Description

Set this attribute to create a ComPlus entry.

Derived By

Type integer

Remarks

The value should be the export flags used during the generation of the .msi file. For more information see the COM+ documentation in the Platform SDK.

Attribute: ComponentGuidGenerationSeed [element Directory]

Description

The Component Guid Generation Seed is a guid that must be used when a Component with the generate guid directive ("*") is not rooted in a standard Windows Installer directory (for example, ProgramFilesFolder or CommonFilesFolder, etc).

Derived By

Type Guid

Remarks

It is recommended that this attribute be avoided and that developers install their Components under standard directories with unique names instead (for example, "ProgramFilesFolder\Company Name Product Name Version"). It is important to note that once a directory is assigned a Component Guid Generation Seed the value must not change until the directory name changes.

Attribute: Compressed [element File]

Description

Sets the file's source type compression.

Derived By

Type YesNoDefaultType

Enumeration

Value  Description 
default   
no   
yes   

Remarks

A setting of "yes" or "no" will override the setting in the Word Count Summary Property.

Attribute: Compressed [element Package]

Description

Set to 'yes' to have compressed files in the source.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This attribute cannot be set for merge modules.

Attribute: Compressed [element PatchInformation]

Description

Compressed files on source

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: CompressionLevel [element Media]

Description

Indicates the compression level for the Media's cabinet.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
high   
low   
medium   
mszip   
none   

Remarks

This attribute can only be used in conjunction with the Cabinet attribute. The default is 'mszip'.

Attribute: ConfigurableDirectory [element Feature]

Description

Specify the Id of a Directory that can be configured by the user at installation time.

Derived By

Type string

Remarks

This identifier must be a public property and therefore completely uppercase.

Attribute: ContentType [element Extension]

Description

The MIME type that is to be written.

Derived By

Type string

Attribute: ContentType [element MIME]

Description

This is the identifier for the MIME content.

Derived By

Type string

Remarks

It is commonly written in the form of type/format.

Attribute: Context [element Class]

Description

The server context(s) for this server.

Derived By

List anySimpleType

Attribute: ContextData [element Configuration]

Description

Specifies a semantic context for the requested data.

Derived By

Type string

Attribute: Control [element Class]

Description

Set this attribute's value to 'yes' to identify an object as an ActiveX Control.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default value is 'no'.

Attribute: Control [element Publish]

Description

The parent Control for this Publish element, should only be specified when this element is a child of the UI element.

Derived By

Type string

Attribute: Control [element TypeLib]

Description

Value of 'yes' means the type library describes controls, and should not be displayed in type browsers intended for nonvisual objects.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This attribute can only be set if Advertise='no'.

Attribute: Cost [element TypeLib]

Description

The cost associated with the registration of the type library in bytes.

Derived By

Type int

Remarks

This attribute cannot be set if Advertise='no'.

Attribute: CreateChild [element Permission]

Description

For a directory, the right to create a subdirectory.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only valid under a 'CreateFolder' parent.

Attribute: CreateFile [element Permission]

Description

For a directory, the right to create a file in the directory.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only valid under a 'CreateFolder' parent.

Attribute: CreateLink [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: CreateSubkeys [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: CreationTimeUTC [element PatchMetadata]

Description

Creation time of the .msp file in the form mm-dd-yy HH:MM (month-day-year hour:minute).

Derived By

Type string

Attribute: CustomPalette [element Dialog]

Description

Used to specify if pictures in the dialog box are rendered with a custom palette.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Default [element Control]

Description

Set this attribute to "yes" to cause this Control to be invoked by the return key.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Default [element MIME]

Description

If 'yes', become the content type for the parent Extension.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default value is 'no'.

Attribute: DefaultLanguage [element File]

Description

This is the default language of this file.

Derived By

Type string

Remarks

The linker will replace this value from the value in the file if the suppress files option is not used.

Attribute: DefaultSize [element File]

Description

This is the default size of this file.

Derived By

Type integer

Remarks

The linker will replace this value from the value in the file if the suppress files option is not used.

Attribute: DefaultValue [element Configuration]

Description

Specifies a default value for the item in this record if the merge tool declines to provide a value.

Derived By

Type string

Attribute: DefaultVersion [element File]

Description

This is the default version of this file.

Derived By

Type string

Remarks

The linker will replace this value from the value in the file if the suppress files option is not used.

Attribute: Delete [element CopyFile]

Description

This attribute cannot be specified if the element is nested under a File element or the FileId attribute is specified.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

 In other cases, if the attribute is not specified, the default value is "no" and the file is copied, not moved. Set the value to "yes" in order to move the file (thus deleting the source file) instead of copying it.

Attribute: Delete [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: DeleteChild [element Permission]

Description

For a directory, the right to delete a directory and all the files it contains, including read-only files.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only valid under a 'CreateFolder' parent.

Attribute: Dependency [element SFPCatalog]

Description

Used to define dependency outside of the package.

Derived By

Type string

Attribute: Depth [element DirectorySearch]

Description

Depth below the path that the installer searches for the file or directory specified by the search.

Derived By

Type integer

Remarks

If this value is not specified, the depth is assumed to be 0.

Attribute: Description [element AppId]

Description

Set this value to the description of the AppId.

Derived By

Type string

Remarks

It can only be specified when the AppId is not being advertised.

Attribute: Description [element Class]

Description

Localized description associated with the Class ID and Program ID.

Derived By

Type string

Attribute: Description [element Column]

Description

Description of this column.

Derived By

Type string

Attribute: Description [element Configuration]

Description

Description for authoring.

Derived By

Type string

Attribute: Description [element Feature]

Description

Longer string of text describing the feature.

Derived By

Type string

Remarks

This localizable string is displayed by the Text Control of the Selection Dialog.

Attribute: Description [element Package]

Description

The product full name or description.

Derived By

Type string

Attribute: Description [element Patch]

Description

Description of the patch.

Derived By

Type string

Attribute: Description [element PatchInformation]

Description

Product full name or description

Derived By

Type string

Attribute: Description [element PatchMetadata]

Description

Description of the patch.

Derived By

Type string

Attribute: Description [element ProgId]

Derived By

Type string

Attribute: Description [element ServiceInstall]

Description

Sets the description of the service.

Derived By

Type string

Attribute: Description [element Shortcut]

Description

The localizable description for the shortcut.

Derived By

Type string

Attribute: Description [element TypeLib]

Description

The localizable description of the type library.

Derived By

Type string

Attribute: DescriptionResourceDll [element Shortcut]

Description

The Formatted string providing the full path to the language neutral file containing the MUI Manifest.

Derived By

Type string

Remarks

Generally authored using [#filekey] form. When this attribute is specified, the DescriptionResourceId attribute must also be provided.

This attribute is only used on Windows Vista and above. If this attribute is not specified and the install is running on Vista and above, the value in the Name attribute is used. If this attribute is provided and the install is running on Vista and above, the value in the Name attribute is ignored.

Attribute: DescriptionResourceId [element Shortcut]

Description

The description name index for the shortcut.

Derived By

Type integer

Remarks

This must be a non-negative number. When this attribute is specified, the DescriptionResourceDll attribute must also be populated.

This attribute is only used on Windows Vista and above. If this attribute is not specified and the install is running on Vista and above, the value in the Name attribute is used. If this attribute is populated and the install is running on Vista and above, the value in the Name attribute is ignored.

Attribute: DestinationDirectory [element CopyFile]

Description

Set this value to the destination directory where an existing file on the target machine should be moved or copied to.

Derived By

Type string

Remarks

This Directory must exist in the installer database at creation time. This attribute cannot be specified in conjunction with DestinationProperty.

Attribute: DestinationLongName [element CopyFile]

Derived By

Type LongFileNameType

Attribute: DestinationName [element CopyFile]

Description

In prior versions of the WiX toolset, this attribute specified the short file name.

Derived By

Type LongFileNameType

Remarks

Now set this value to the localizable name to be given to the original file after it is moved or copied. If this attribute is not specified, then the destination file is given the same name as the source file. If a short file name is specified, the DestinationShortName attribute may not be specified. If a long file name is specified, the DestinationLongName attribute may not be specified. Also, if this value is a long file name, the DestinationShortName attribute may be omitted to allow WiX to attempt to generate a unique short file name. However, if this name collides with another file or you wish to manually specify the short file name, then the DestinationShortName attribute may be specified.

Attribute: DestinationProperty [element CopyFile]

Description

Set this value to a property that will have a value that resolves to the full path of the destination directory.

Derived By

Type string

Remarks

The property does not have to exist in the installer database at creation time; it could be created at installation time by a custom action, on the command line, etc. This attribute cannot be specified in conjunction with DestinationDirectory.

Attribute: DestinationShortName [element CopyFile]

Description

The short file name of the file in 8.3 format.

Derived By

Type ShortFileNameType

Remarks

This attribute should only be set if there is a conflict between generated short file names or you wish to manually specify the short file name.

Attribute: Dialog [element Publish]

Description

The parent Dialog for this Publish element, should only be specified when this element is a child of the UI element.

Derived By

Type string

Remarks

This attribute will create a reference to the specified Dialog, so an additional DialogRef is not necessary.

Attribute: Dialog [element Show]

Derived By

Type string

Attribute: Directory [element Component]

Description

Sets the Directory of the Component.

Derived By

Type string

Remarks

If this element is nested under a Directory element, this value defaults to the value of the parent Directory/@Id.

Attribute: Directory [element CreateFolder]

Description

Identifier of Directory to create.

Derived By

Type string

Remarks

Defaults to Directory of parent Component.

Attribute: Directory [element CustomAction]

Description

This attribute specifies a reference to a Directory element with matching Id attribute containing a directory path.

Derived By

Type string

Remarks

This attribute is typically used with the ExeCommand attribute to specify the source executable for a type 34 custom action, or with the Value attribute to specify a formatted string to place in the specified Directory table entry in a type 35 custom action.

Attribute: Directory [element IniFile]

Description

Name of a property, the value of which is the full path of the folder containing the .ini file.

Derived By

Type string

Remarks

Can be name of a directory in the Directory table, a property set by the AppSearch table, or any other property representing a full path.

Attribute: Directory [element RemoveFile]

Description

Overrides the directory of the parent component with a specific Directory.

Derived By

Type string

Remarks

This Directory must exist in the installer database at creation time. This attribute cannot be specified in conjunction with the Property attribute.

Attribute: Directory [element RemoveFolder]

Description

Overrides the directory of the parent component with a specific Directory.

Derived By

Type string

Remarks

This Directory must exist in the installer database at creation time. This attribute cannot be specified in conjunction with the Property attribute.

Attribute: Directory [element ReserveCost]

Description

Adds the amount of disk space specified in RunFromSource or RunLocal to the volume cost of the device containing the directory.

Derived By

Type string

Remarks

If this attribute is not set, it will default to the directory of parent component.

Attribute: Directory [element Shortcut]

Description

Identifier reference to Directory element where shortcut is to be created.

Derived By

Type string

Remarks

When nested under a Component element, this attribute's value will default to the parent directory. Otherwise, this attribute is required.

Attribute: Disabled [element Control]

Description

Set this attribute to "yes" to cause the Control to be disabled.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: DisableRegistryReflection [element Component]

Description

Set this attribute to 'yes' in order to disable registry reflection on all existing and new registry keys affected by this component.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

When set to 'yes', the Windows Installer calls the RegDisableReflectionKey on each key being accessed by the component. This bit is available with Windows Installer version 4.0 and is ignored on 32-bit systems.

Attribute: DiskId [element Component]

Description

This attribute must be set either on a Component element or all of its children File elements.

Derived By

Type integer

Remarks

The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere. By creating this connection between a component (or particular files), you set the packaging options to the values specified in the Media element (values such as compression level, cab embedding, etc...).

Attribute: DiskId [element Directory]

Description

Sets the default disk identifier for the files contained in this directory.

Derived By

Type integer

Remarks

This attribute must be set on a Component, Directory, or DirectoryRef element or all of its children File elements, else the default disk identifier of 1 is assumed. The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere. By creating this connection between a component (or particular files), you set the packaging options to the values specified in the Media element (values such as compression level, cab embedding, etc...).

Attribute: DiskId [element DirectoryRef]

Description

Sets the default disk identifier for the files contained in this directory.

Derived By

Type integer

Remarks

This attribute must be set on a Component, Directory, or DirectoryRef element or all of its children File elements, else the default disk identifier of 1 is assumed. The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere. By creating this connection between a component (or particular files), you set the packaging options to the values specified in the Media element (values such as compression level, cab embedding, etc...).

Attribute: DiskId [element Family]

Description

Entered into the DiskId field of the new Media table record.

Derived By

Type int

Attribute: DiskId [element File]

Description

Specifies the Media this File should be sourced on.

Derived By

Type integer

Remarks

This attribute overrides the default DiskId attribute from the parent Component element. If no DiskId attribute is specifed, the default is "1".

Attribute: DiskId [element Merge]

Description

The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere.

Derived By

Type string

Remarks

By creating this connection between the Merge Module and Media element, you set the packaging options to the values specified in the Media element (values such as compression level, cab embedding, etc...).

Attribute: DiskPrompt [element Family]

Description

Value to display in the "[1]" of the DiskPrompt Property.

Derived By

Type string

Remarks

Using this attribute will require you to define a DiskPrompt Property.

Attribute: DiskPrompt [element Media]

Description

The disk name, which is usually the visible text printed on the disk.

Derived By

Type string

Remarks

This localizable text is used to prompt the user when this disk needs to be inserted. This value will be used in the "[1]" of the DiskPrompt Property. Using this attribute will require you to define a DiskPrompt Property.

Attribute: Display [element Feature]

Description

Determines the initial display of this feature in the feature tree.

Derived By

Type string

Remarks

This attribute's value should be one of the following:

collapse - Initially shows the feature collapsed. This is the default value.
expand - Initially shows the feature expanded.
hidden - Prevents the feature from displaying in the user interface.
<an explicit integer value> - For advanced users only, it is possible to directly set the integer value of the display value that will appear in the Feature row.

Attribute: DisplayName [element Configuration]

Description

Display name for authoring.

Derived By

Type string

Attribute: DisplayName [element Patch]

Description

A title for the patch that is suitable for public display.

Derived By

Type string

Remarks

In Add/Remove Programs from XP SP2 on.

Attribute: DisplayName [element PatchMetadata]

Description

A title for the patch that is suitable for public display.

Derived By

Type string

Remarks

 In Add/Remove Programs from XP SP2 on.

Attribute: DisplayName [element ServiceInstall]

Description

This column is the localizable string that user interface programs use to identify the service.

Derived By

Type string

Attribute: DisplayResourceDll [element Shortcut]

Description

The Formatted string providing the full path to the language neutral file containing the MUI Manifest.

Derived By

Type string

Remarks

Generally authored using [#filekey] form. When this attribute is specified, the DisplayResourceId attribute must also be provided.

This attribute is only used on Windows Vista and above. If this attribute is not populated and the install is running on Vista and above, the value in the Name attribute is used. If this attribute is populated and the install is running on Vista and above, the value in the Name attribute is ignored.

Attribute: DisplayResourceId [element Shortcut]

Description

The display name index for the shortcut.

Derived By

Type integer

Remarks

This must be a non-negative number. When this attribute is specified, the DisplayResourceDll attribute must also be proviced.

This attribute is only used on Windows Vista and above. If this attribute is not specified and the install is running on Vista and above, the value in the Name attribute is used. If this attribute is specified and the install is running on Vista and above, the value in the Name attribute is ignored.

Attribute: DllEntry [element CustomAction]

Description

This attribute specifies the name of a function in a custom action to execute.

Derived By

Type string

Remarks

This attribute is used with the BinaryKey attribute to create a type 1 custom action, or with the FileKey attribute to create a type 17 custom action.

Attribute: DllSurrogate [element AppId]

Description

Set this value to specify that the class is a DLL that is to be activated in a surrogate EXE process, and the surrogate process to be used is the path of a surrogate EXE file specified by the value.

Derived By

Type string

Attribute: Domain [element Permission]

Derived By

Type string

Attribute: DriverName [element ODBCDataSource]

Description

Required if not found as child of ODBCDriver element

Derived By

Type string

Attribute: ElevationShield [element Control]

Description

This attribute is only valid for PushButton controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Set this attribute to "yes" to add the User Account Control (UAC) elevation icon (shield icon) to the PushButton control. If this attribute's value is "yes" and the installation is not yet running with elevated privileges, the pushbutton control is created using the User Account Control (UAC) elevation icon (shield icon). If this attribute's value is "yes" and the installation is already running with elevated privileges, the pushbutton control is created using the other icon attributes. Otherwise, the pushbutton control is created using the other icon attributes.

Attribute: EmbedCab [element Media]

Description

Instructs the binder to embed the cabinet in the product if 'yes'.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This attribute can only be specified in conjunction with the Cabinet attribute.

Attribute: EnumerateSubkeys [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: EraseDescription [element ServiceInstall]

Description

Determines whether the existing service description will be ignored.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

If 'yes', the service description will be null, even if the Description attribute is set.

Attribute: Error [element CustomAction]

Description

This attribute specifies an index in the MSI Error table to use as an error message for a type 19 custom action that displays the error message and aborts a product's installation.

Derived By

Type string

Attribute: ErrorControl [element ServiceInstall]

Description

Determines what action should be taken on an error.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
ignore  Logs the error and continues with the startup operation.
normal  Logs the error, displays a message box and continues the startup operation.
critical  Logs the error if it is possible and the system is restarted with the last configuration known to be good. If the last-known-good configuration is being started, the startup operation fails.

Attribute: ErrorDialog [element Dialog]

Description

Specifies this dialog as an error dialog.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Event [element Publish]

Description

Set this attribute's value to one of the standard control events to trigger that event.

Derived By

Type string

Remarks

Either this attribute or the Property attribute must be set, but not both at the same time.

Attribute: Event [element Subscribe]

Description

must be one of the standard control events'

Derived By

Type string

Attribute: ExcludedId [element Exclusion]

Description

Identifier of the merge module that is incompatible.

Derived By

Type string

Attribute: ExcludedMaxVersion [element Exclusion]

Description

Maximum version excluded from a range.

Derived By

Type string

Remarks

If not set, all versions after min are excluded. If neither max nor min, no exclusion based on version.

Attribute: ExcludedMinVersion [element Exclusion]

Description

Minimum version excluded from a range.

Derived By

Type string

Remarks

If not set, all versions before max are excluded. If neither max nor min, no exclusion based on version.

Attribute: ExcludeExceptLanguage [element Exclusion]

Description

Numeric language ID of the merge module in ExcludedID.

Derived By

Type integer

Remarks

All except this language will be excluded. Only one of ExcludeExceptLanguage and ExcludeLanguage may be specified.

Attribute: ExcludeLanguage [element Exclusion]

Description

Numeric language ID of the merge module in ExcludedID.

Derived By

Type integer

Remarks

The specified language will be excluded. Only one of ExcludeExceptLanguage and ExcludeLanguage may be specified.

Attribute: ExcludeLanguages [element UpgradeVersion]

Description

Set to "yes" to detect all languages, excluding the languages listed in the Language attribute.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: ExeCommand [element CustomAction]

Description

This attribute specifies the command line parameters to supply to an externally run executable.

Derived By

Type string

Remarks

This attribute is typically used with the BinaryKey attribute for a type 2 custom action, the FileKey attribute for a type 18 custom action, the Property attribute for a type 50 custom action, or the Directory attribute for a type 34 custom action that specify the executable to run.

Attribute: Execute [element CustomAction]

Description

This attribute indicates the scheduling of the custom action.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
commit  Indicates that the custom action will run after successful completion of the installation script (at the end of the installation).
deferred  Indicates that the custom action runs in-script (possibly with elevated privileges).
firstSequence  Indicates that the custom action will only run in the first sequence that runs it.
immediate  Indicates that the custom action will run during normal processing time with user privileges. This is the default.
oncePerProcess  Indicates that the custom action will only run in the first sequence that runs it in the same process.
rollback  Indicates that a custom action will run in the rollback sequence when a failure
occurs during installation, usually to undo changes made by a deferred custom action.
secondSequence  Indicates that a custom action should be run a second time if it was previously run in an earlier sequence.

Attribute: Execute [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: FaceName [element TextStyle]

Derived By

Type string

Attribute: Feature [element Billboard]

Description

Feature whose state determines if the Billboard is shown.

Derived By

Type string

Attribute: Feature [element Category]

Description

Feature that controls the advertisement of the category.

Derived By

Type string

Remarks

Defaults to the primary Feature for the parent Component.

Attribute: Feature [element Component]

Description

Identifies a feature to which this component belongs, as a shorthand for a child ComponentRef element of the Feature element.

Derived By

Type string

Remarks

The value of this attribute should correspond to the Id attribute of a Feature element authored elsewhere. Note that a single component can belong to multiple features but this attribute allows you to specify only a single feature.

Attribute: Field [element IniFileSearch]

Description

The field in the .ini line. If field is Null or 0, the entire line is read.

Derived By

Type integer

Attribute: File [element ExternalFile]

Description

Foreign key into the File table.

Derived By

Type string

Attribute: File [element ODBCDriver]

Description

Required if not found as child of File element

Derived By

Type string

Attribute: File [element ODBCTranslator]

Description

Required if not found as child of File element

Derived By

Type string

Attribute: File [element ProtectFile]

Description

Foreign key into the File table.

Derived By

Type string

Attribute: File [element UpgradeFile]

Description

Foreign key into the File table.

Derived By

Type string

Attribute: FileCompression [element Merge]

Description

Specifies if the files in the merge module should be compressed.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: FileId [element CopyFile]

Description

This attribute cannot be specified if the element is nested under a File element.

Derived By

Type string

Remarks

Set this attribute's value to the identifier of a file from a different component to copy it based on the install state of the parent component.

Attribute: FileKey [element CustomAction]

Description

This attribute specifies a reference to a File element with matching Id attribute that will execute the custom action code in the file after the file is installed.

Derived By

Type string

Remarks

This attribute is typically used with the ExeCommand attribute to specify a type 18 custom action that runs an installed executable, with the DllEntry attribute to specify an installed custom action DLL to use for a type 17 custom action, or with the VBScriptCall or JScriptCall attributes to specify a type 21 or 22 custom action.

Attribute: FileSource [element Directory]

Description

Used to set the file system source for this directory's child elements.

Derived By

Type string

Attribute: FileSource [element DirectoryRef]

Description

Used to set the file system source for this directory ref's child elements.

Derived By

Type string

Attribute: FileSource [element EmbeddedChainer]

Description

Reference to the File element that is the chainer executeable.

Derived By

Type string

Remarks

Mutually exclusive with the BinarySource and PropertySource attributes.

Attribute: Fixed [element Control]

Description

This attribute is only valid for Volume and Directory Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: FixedSize [element Control]

Description

This attribute is only valid for RadioButton, PushButton, and Icon Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Floppy [element Control]

Description

This attribute is only valid for Volume and Directory Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: FontTitle [element File]

Description

Causes an entry to be generated for the file in the Font table with the specified FontTitle.

Derived By

Type string

Remarks

This attribute is intended to be used to register the file as a non-TrueType font.

Attribute: Format [element Configuration]

Description

Specifies the format of the data being changed.

Derived By

Restricting string

Enumeration

Value  Description 
Text   
Key   
Integer   
Bitfield   

Attribute: FormatSize [element Control]

Description

This attribute is only valid for Text Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: GenericAll [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: GenericExecute [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: GenericRead [element Permission]

Description

specifying this will fail to grant read access

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: GenericWrite [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Green [element TextStyle]

Description

0 to 255

Derived By

Type integer

Attribute: Group [element ServiceDependency]

Description

Set to 'yes' to indicate that the value in the Id attribute is the name of a group of services.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Guid [element Component]

Description

This value should be a guid that uniquely identifies this component's contents, language, platform, and version.

Derived By

Type ComponentGuid

Remarks

It's also possible to set the value to an empty string to specify an unmanaged component. Unmanaged components are a security vulnerability because the component cannot be removed or repaired by Windows Installer (it is essentially an unpatchable, permanent component). Therefore, a guid should always be specified for any component which contains resources that may need to be patched in the future.

Attribute: Guid [element ComponentSearch]

Description

The component ID of the component whose key path is to be used for the search.

Derived By

Type Guid

Attribute: Guid [element Module]

Description

This attribute is deprecated. Use the Package/@Id instead.

Derived By

Type Guid

Attribute: Handler [element Class]

Description

The default inproc handler.

Derived By

Type string

Remarks

May be optionally provided only for Context = LocalServer or LocalServer32. Value of "1" creates a 16-bit InprocHandler (appearing as the InprocHandler value). Value of "2" creates a 32-bit InprocHandler (appearing as the InprocHandler32 value). Value of "3" creates 16-bit as well as 32-bit InprocHandlers. A non-numeric value is treated as a system file that serves as the 32-bit InprocHandler (appearing as the InprocHandler32 value).

Attribute: HasBorder [element Control]

Description

This attribute is only valid for RadioButton Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: HasDiskImage [element TypeLib]

Description

Value of 'yes' means the type library exists in a persisted form on disk.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This attribute can only be set if Advertise='no'.

Attribute: Height [element Control]

Description

Height of the rectangular boundary of the control.

Derived By

Type LocalizableInteger

Remarks

This must be a non-negative number.

Attribute: Height [element Dialog]

Description

The height of the dialog box in dialog units.

Derived By

Type integer

Attribute: Height [element RadioButton]

Derived By

Type LocalizableInteger

Attribute: Help [element Control]

Description

This attribute is reserved for future use.

Derived By

Type string

Remarks

There is no need to use this until Windows Installer uses it for something.

Attribute: Help [element RadioButton]

Derived By

Type string

Attribute: HelpDirectory [element TypeLib]

Description

The identifier of the Directory element for the help directory.

Derived By

Type string

Attribute: HelpKeyword [element Configuration]

Description

Keyword into chm file for authoring.

Derived By

Type string

Attribute: HelpLocation [element Configuration]

Description

Location of chm file for authoring.

Derived By

Type string

Attribute: Hidden [element Control]

Description

Set this attribute to "yes" to cause the Control to be hidden.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Hidden [element Dialog]

Description

Used to hide the dialog.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Hidden [element File]

Description

Set to yes in order to have the file's hidden attribute set when it is installed on the target machine.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Hidden [element Property]

Description

Denotes that the Property is not logged during installation.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

See the MsiHiddenProperties Property for more information.

Attribute: Hidden [element TypeLib]

Description

Value of 'yes' means the type library should not be displayed to users, although its use is not restricted.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Should be used by controls. Hosts should create a new type library that wraps the control with extended properties. This attribute can only be set if Advertise='no'.

Attribute: HideTarget [element CustomAction]

Description

Ensures the installer does not log the CustomActionData for the deferred custom action.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Hotkey [element Shortcut]

Description

The hotkey for the shortcut.

Derived By

Type integer

Remarks

The low-order byte contains the virtual-key code for the key, and the high-order byte contains modifier flags. This must be a non-negative number. Authors of installation packages are generally recommend not to set this option, because this can add duplicate hotkeys to a users desktop. In addition, the practice of assigning hotkeys to shortcuts can be problematic for users using hotkeys for accessibility.

Attribute: Icon [element Class]

Description

The file providing the icon associated with this CLSID.

Derived By

Type string

Remarks

Reference to an Icon element (should match the Id attribute of an Icon element). This is currently not supported if the value of the Advertise attribute is "no".

Attribute: Icon [element Control]

Description

This attribute is only valid for RadioButton and PushButton Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Icon [element ListItem]

Description

The identifier of the Binary (not Icon) element containing the icon to associate with this item.

Derived By

Type string

Remarks

This value is only valid when nested under a ListView element.

Attribute: Icon [element ProgId]

Description

For an advertised ProgId, the Id of an Icon element.

Derived By

Type string

Remarks

For a non-advertised ProgId, this is the Id of a file containing an icon resource.

Attribute: Icon [element RadioButton]

Description

This attribute defines the icon displayed with the radio button.

Derived By

Type string

Remarks

The value of the attribute creates a reference to a Binary element that represents the icon. This attribute is mutually exclusive with the Bitmap and Text attributes.

Attribute: Icon [element Shortcut]

Description

Identifier reference to Icon element.

Derived By

Type string

Remarks

The Icon identifier should have the same extension as the file that it points at. For example, a shortcut to an executable (e.g. "my.exe") should reference an Icon with identifier like "MyIcon.exe"

Attribute: IconIndex [element Class]

Description

Icon index into the icon file.

Derived By

Type integer

Attribute: IconIndex [element ProgId]

Derived By

Type integer

Attribute: IconIndex [element Shortcut]

Description

Identifier reference to Icon element.

Derived By

Type integer

Attribute: IconSize [element Control]

Description

This attribute is only valid for RadioButton, PushButton, and Icon Controls.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
16   
32   
48   

Attribute: Id [element AppId]

Description

Set this value to the AppID GUID that corresponds to the named executable.

Derived By

Type Guid

Attribute: Id [element AssemblyName]

Description

Name of the attribute associated with the value specified in the Value column.

Derived By

Type string

Attribute: Id [element Billboard]

Description

Unique identifier for the Billboard.

Derived By

Type string

Attribute: Id [element BillboardAction]

Description

Action name that determines when the Billboard should be shown.

Derived By

Type string

Attribute: Id [element Binary]

Description

The Id cannot by longer than 55 characters.

Derived By

Type string

Remarks

In order to prevent errors in cases where the Id is modularized, it should not be longer than 18 characters.

Attribute: Id [element BinaryRef]

Description

The identifier of the Binary element to reference.

Derived By

Type string

Attribute: Id [element Category]

Description

A string GUID that represents the category of components being grouped together.

Derived By

Type Guid

Attribute: Id [element Class]

Description

The Class identifier (CLSID) of a COM server.

Derived By

Type Guid

Attribute: Id [element Column]

Description

Identifier for the column.

Derived By

Type string

Attribute: Id [element Component]

Description

Component identifier; this is the primary key for identifying components.

Derived By

Type string

Attribute: Id [element ComponentGroup]

Description

Identifier for the ComponentGroup.

Derived By

Type string

Attribute: Id [element ComponentGroupRef]

Description

The identifier of the ComponentGroup to reference.

Derived By

Type string

Attribute: Id [element ComponentRef]

Description

The identifier of the Component element to reference.

Derived By

Type string

Attribute: Id [element ComponentSearch]

Derived By

Type string

Attribute: Id [element Control]

Description

Combined with the Dialog Id to make up the primary key of the Control table.

Derived By

Type string

Attribute: Id [element CopyFile]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Attribute: Id [element CustomAction]

Description

The identifier of the custom action.

Derived By

Type string

Attribute: Id [element CustomActionRef]

Description

The identifier of the CustomAction to reference.

Derived By

Type string

Attribute: Id [element CustomTable]

Description

Identifier for the custom table.

Derived By

Type string

Attribute: Id [element Dialog]

Description

Unique identifier for the dialog.

Derived By

Type string

Attribute: Id [element DialogRef]

Description

The identifier of the Dialog to reference.

Derived By

Type string

Attribute: Id [element DigitalCertificate]

Description

Identifier for a certificate file.

Derived By

Type string

Attribute: Id [element Directory]

Description

This value is the unique identifier of the directory entry.

Derived By

Type string

Attribute: Id [element DirectoryRef]

Description

The identifier of the Directory element to reference.

Derived By

Type string

Attribute: Id [element DirectorySearch]

Description

Unique identifier for the directory search.

Derived By

Type string

Attribute: Id [element DirectorySearchRef]

Description

Id of the search being referred to.

Derived By

Type string

Attribute: Id [element EmbeddedChainer]

Description

Unique identifier for embedded chainer.

Derived By

Type string

Attribute: Id [element EmbeddedChainerRef]

Derived By

Type string

Attribute: Id [element EmbeddedUI]

Description

Unique identifier for embedded UI.

Derived By

Type string

Attribute: Id [element EmbeddedUIResource]

Description

Identifier for the embedded UI resource.

Derived By

Type string

Attribute: Id [element EnsureTable]

Description

The name of the table.

Derived By

Type string

Attribute: Id [element Environment]

Description

Unique identifier for environment entry.

Derived By

Type string

Attribute: Id [element Error]

Description

Number of the error for which a message is being provided.

Derived By

Type integer

Remarks

See MSI SDK for error definitions.

Attribute: Id [element Extension]

Description

This is simply the file extension, like "doc" or "xml". Do not include the preceding period.

Derived By

Type string

Attribute: Id [element Feature]

Description

Unique identifier of the feature.

Derived By

Type string

Attribute: Id [element FeatureGroup]

Description

Identifier for the FeatureGroup.

Derived By

Type string

Attribute: Id [element FeatureGroupRef]

Description

The identifier of the FeatureGroup to reference.

Derived By

Type string

Attribute: Id [element FeatureRef]

Description

The identifier of the Feature element to reference.

Derived By

Type string

Attribute: Id [element File]

Description

The unique identifier for this File element.

Derived By

Type string

Remarks

If you omit Id, it defaults to the file name portion of the Source attribute, if specified. May be referenced as a Property by specifying [#value].

Attribute: Id [element FileSearch]

Description

Unique identifier for the file search and external key into the Signature table.

Derived By

Type string

Remarks

This attribute is required if FileSearch is nested under a DirectorySearch or DirectorySearchRef element.

Attribute: Id [element FileSearchRef]

Description

Specify the Id to the FileSearch to reference.

Derived By

Type string

Attribute: Id [element Fragment]

Description

Optional identifier for a Fragment.

Derived By

Type string

Remarks

Should only be set by advanced users to tag sections.

Attribute: Id [element Icon]

Description

The Id cannot by longer than 55 characters.

Derived By

Type string

Remarks

In order to prevent errors in cases where the Id is modularized, it should not be longer than 18 characters.

Attribute: Id [element IconRef]

Description

The identifier of the Icon element to reference.

Derived By

Type string

Attribute: Id [element IgnoreTable]

Description

The name of the table in the merge module that is not to be merged into the .msi file.

Derived By

Type string

Attribute: Id [element IniFile]

Description

Identifier for ini file.

Derived By

Type string

Attribute: Id [element IniFileSearch]

Description

External key into the Signature table.

Derived By

Type string

Attribute: Id [element Instance]

Description

The identity of the instance transform.

Derived By

Type string

Remarks

This value will define the name by which the instance should be referred to on the command line. In addition, the value of the this attribute will determine what the value of the property specified in Property attribute on InstanceTransforms will change to for each instance.

Attribute: Id [element Interface]

Description

GUID identifier for COM Interface.

Derived By

Type Guid

Attribute: Id [element Media]

Description

Disk identifier for Media table.

Derived By

Type integer

Remarks

This number must be equal to or greater than 1.

Attribute: Id [element Merge]

Description

The unique identifier for the Merge element in the source code.

Derived By

Type string

Remarks

Referenced by the MergeRef/@Id.

Attribute: Id [element MergeRef]

Description

The unique identifier for the Merge element to be referenced.

Derived By

Type string

Attribute: Id [element Module]

Description

The name of the merge module (not the file name).

Derived By

Type string

Attribute: Id [element ODBCDataSource]

Description

Identifier of the data source.

Derived By

Type string

Attribute: Id [element ODBCDriver]

Description

Identifier for the driver.

Derived By

Type string

Attribute: Id [element ODBCTranslator]

Description

Identifier for the translator.

Derived By

Type string

Attribute: Id [element Package]

Description

The package code GUID for a product or merge module.

Derived By

Type AutogenGuid

Remarks

When compiling a product, this attribute should not be set in order to allow the package code to be generated for each build. When compiling a merge module, this attribute must be set to the modularization guid.

Attribute: Id [element Patch]

Description

Patch code for this patch.

Derived By

Type AutogenGuid

Attribute: Id [element PatchBaseline]

Description

Identifier for a set of product versions.

Derived By

Type string

Attribute: Id [element PatchCreation]

Description

PatchCreation identifier; this is the primary key for identifying patches.

Derived By

Type Guid

Attribute: Id [element PatchFamily]

Description

Identifier which indicates a sequence family to which this patch belongs.

Derived By

Type string

Attribute: Id [element PatchFamilyRef]

Description

The identifier of the CustomAction to reference.

Derived By

Type string

Attribute: Id [element Product]

Description

The product code GUID for the product.

Derived By

Type AutogenGuid

Attribute: Id [element ProgId]

Derived By

Type string

Attribute: Id [element Property]

Description

Unique identifier for Property.

Derived By

Type string

Attribute: Id [element PropertyRef]

Description

Identifier of Property to reference.

Derived By

Type string

Attribute: Id [element Registry]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Remarks

If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.

Attribute: Id [element RegistryKey]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Remarks

If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.

Attribute: Id [element RegistrySearch]

Description

Signature to be used for the file, directory or registry key being searched for.

Derived By

Type string

Attribute: Id [element RegistrySearchRef]

Description

Specify the Id of the RegistrySearch to reference.

Derived By

Type string

Attribute: Id [element RegistryValue]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Remarks

If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.

Attribute: Id [element RemoveFile]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Attribute: Id [element RemoveFolder]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Attribute: Id [element RemoveRegistryKey]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Remarks

If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.

Attribute: Id [element RemoveRegistryValue]

Description

Primary key used to identify this particular entry.

Derived By

Type string

Remarks

If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.

Attribute: Id [element ReplacePatch]

Description

Patch GUID to be unregistered if it exists on the machine targeted by this patch.

Derived By

Type Guid

Attribute: Id [element ReserveCost]

Description

A primary key that uniquely identifies this ReserveCost entry.

Derived By

Type string

Attribute: Id [element ServiceControl]

Derived By

Type string

Attribute: Id [element ServiceDependency]

Derived By

Type string

Remarks

The value of this attribute should be one of the following:

  1. The name (not the display name) of a previously installed service.

  2. A foreign key referring to another ServiceInstall/@Id.
  3. A group of services (in which case the Group attribute should be set to 'yes').

Attribute: Id [element ServiceInstall]

Description

Unique identifier for this service.

Derived By

Type string

Attribute: Id [element SetDirectory]

Description

This attribute specifies a reference to a Directory element with matching Id attribute.

Derived By

Type string

Remarks

The path of the Directory will be set to the Value attribute.

Attribute: Id [element SetProperty]

Description

This attribute specifies the Property to set to the Value.

Derived By

Type string

Attribute: Id [element SFPFile]

Description

Primary Key to File Table.

Derived By

Type string

Attribute: Id [element Shortcut]

Description

Unique identifier for the shortcut.

Derived By

Type string

Remarks

This value will serve as the primary key for the row.

Attribute: Id [element TargetFile]

Description

Foreign key into the File table.

Derived By

Type string

Attribute: Id [element TargetImage]

Description

Identifier for the target image.

Derived By

Type string

Attribute: Id [element TargetProductCode]

Description

The product code for a product that can receive this patch (or '*' for all products).

Derived By

Type string

Attribute: Id [element TextStyle]

Derived By

Type string

Attribute: Id [element TypeLib]

Description

The GUID that identifes the type library.

Derived By

Type Guid

Attribute: Id [element UI]

Derived By

Type string

Attribute: Id [element UIRef]

Derived By

Type string

Attribute: Id [element UIText]

Derived By

Type string

Attribute: Id [element Upgrade]

Description

This value specifies the upgrade code for the products that are to be detected by the FindRelatedProducts action.

Derived By

Type Guid

Attribute: Id [element UpgradeImage]

Description

Identifier to connect target images with upgraded image.

Derived By

Type string

Attribute: Id [element Verb]

Description

The verb for the command.

Derived By

Type string

Attribute: Id [element WixVariable]

Description

The name of the variable.

Derived By

Type string

Attribute: Ignore [element UpgradeFile]

Description

If yes, the file is ignored during patching, and the next two attributes are ignored.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreActionData [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_ACTIONDATA messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreActionStart [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_ACTIONSTART messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreAddExistingRow [element Validate]

Description

Ignore errors when adding existing rows.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is 'yes'.

Attribute: IgnoreAddExistingTable [element Validate]

Description

Ignore errors when adding existing tables.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is 'yes'.

Attribute: IgnoreChangingCodePage [element Validate]

Description

Ignore errors when changing the database code page.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is 'no'.

Attribute: IgnoreCommonData [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_COMMONDATA messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreDeleteMissingRow [element Validate]

Description

Ignore errors when deleting missing rows.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is 'yes'.

Attribute: IgnoreDeleteMissingTable [element Validate]

Description

Ignore errors when deleting missing tables.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

 The default is 'yes'.

Attribute: IgnoreError [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_ERROR messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreFatalExit [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_FATALEXIT messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreFilesInUse [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_FILESINUSE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreInfo [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_INFO messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreInitialize [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_INITIALIZE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreMissingFiles [element TargetImage]

Description

Files missing from the target image are ignored by the installer.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreOutOfDiskSpace [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_OUTOFDISKSPACE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreParent [element FeatureGroupRef]

Description

Normally feature group references that end up nested under a parent element create a connection to that parent.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This behavior is undesirable when trying to simply reference to a FeatureGroup in a different Fragment. Specify 'yes' to have this feature group reference not create a connection to its parent. The default is 'no'.

Attribute: IgnoreParent [element FeatureRef]

Description

Normally feature references that are nested under a parent element create a connection to that parent.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This behavior is undesirable when trying to simply reference a Feature in a different Fragment. Specify 'yes' to have this feature reference not create a connection to its parent. The default is 'no'.

Attribute: IgnoreProgress [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_PROGRESS messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreRemoveFailure [element UpgradeVersion]

Description

Set to "yes" to continue installation upon failure to remove a product or application.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreResolveSource [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_RESOLVESOURCE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreRMFilesInUse [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_RMFILESINUSE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreShowDialog [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_SHOWDIALOG messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreTerminate [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_TERMINATE messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreUpdateMissingRow [element Validate]

Description

Ignore errors when updating missing rows.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The default is 'yes'.

Attribute: IgnoreUser [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_USER messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IgnoreWarning [element EmbeddedUI]

Description

Embedded UI will not recieve any INSTALLLOGMODE_WARNING messages.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Image [element Control]

Description

This attribute is only valid for RadioButton, PushButton, and Icon Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Impersonate [element CustomAction]

Description

This attribute specifies whether the Windows Installer, which executes as LocalSystem, should impersonate the user context of the installing user when executing this custom action.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Typically the value should be 'yes', except when the custom action needs elevated privileges to apply changes to the machine.

Attribute: IncludeMaximum [element UpgradeVersion]

Description

Set to "yes" to make the range of versions detected include the value specified in Maximum.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: IncludeMinimum [element UpgradeVersion]

Description

Set to "no" to make the range of versions detected exclude the value specified in Minimum.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

This attribute is "yes" by default.

Attribute: Indirect [element Control]

Description

Specifies whether the value displayed or changed by this control is referenced indirectly.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

If this bit is set, the control displays or changes the value of the property that has the identifier listed in the Property column of the Control table.

Attribute: Insertable [element Class]

Description

Specifies the CLISD may be insertable.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: InstallDefault [element Feature]

Description

This attribute determines the default install/run location of a feature.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
followParent  Forces the feature to follow the same installation state as its parent feature.
local  Favors installing this feature locally by setting the msidbFeatureAttributesFavorLocal attribute.
source  Favors running this feature from source by setting the msidbFeatureAttributesFavorSource attribute.

Remarks

This attribute cannot be specified if the value of the FollowParent attribute is 'yes' since that would ask the installer to force this feature to follow the parent installation state and simultaneously favor a particular installation state just for this feature.

Attribute: InstallerVersion [element Package]

Description

The minimum version of the Windows Installer required to install this package.

Derived By

Type integer

Remarks

Take the major version of the required Windows Installer and multiply by a 100 then add the minor version of the Windows Installer. For example, "200" would represent Windows Installer 2.0 and "405" would represent Windows Installer 4.5.

Attribute: InstallPrivileges [element Package]

Description

Use this attribute to specify the priviliges required to install the package on Windows Vista and above.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
limited  Set this value to declare that the package does not require elevated privileges to install.
elevated  Set this value to declare that the package requires elevated privileges to install.
This is the default value.

Attribute: InstallScope [element Package]

Description

Use this attribute to specify the installation scope of this package: per-machine or per-user.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
perMachine  Set this value to declare that the package is a per-machine installation and requires elevated privileges to install.
Sets the ALLUSERS property to 1.
perUser  Set this value to declare that the package is a per-user installation and does not require elevated privileges to install.
Sets the package's InstallPrivileges attribute to "limited."

Attribute: Integer [element Control]

Description

Set this attribute to "yes" to cause the linked Property value for the Control to be treated as an integer. Otherwise, the Property will be treated as a string.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Interactive [element ServiceInstall]

Description

Whether or not the service interacts with the desktop.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Italic [element TextStyle]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: JScriptCall [element CustomAction]

Description

This attribute specifies the name of the JScript function to execute in a script.

Derived By

Type string

Remarks

The script must be provided in a Binary element identified by the BinaryKey attribute described above. In other words, this attribute must be specified in conjunction with the BinaryKey attribute.

Attribute: KeepModeless [element Dialog]

Description

Keep modeless dialogs alive when this dialog is created through DoAction.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Key [element IniFile]

Description

The localizable .ini file key within the section.

Derived By

Type string

Attribute: Key [element IniFileSearch]

Description

The key value within the section.

Derived By

Type string

Attribute: Key [element Registry]

Description

The localizable key for the registry value.

Derived By

Type string

Attribute: Key [element RegistryKey]

Description

The localizable key for the registry value.

Derived By

Type string

Remarks

If the parent element is a RegistryKey, this value may be omitted to use the path of the parent, or if its specified it will be appended to the path of the parent.

Attribute: Key [element RegistrySearch]

Description

Key for the registry value.

Derived By

Type string

Attribute: Key [element RegistryValue]

Description

The localizable key for the registry value.

Derived By

Type string

Remarks

If the parent element is a RegistryKey, this value may be omitted to use the path of the parent, or if its specified it will be appended to the path of the parent.

Attribute: Key [element RemoveRegistryKey]

Description

The localizable key for the registry value.

Derived By

Type string

Attribute: Key [element RemoveRegistryValue]

Description

The localizable key for the registry value.

Derived By

Type string

Remarks

If the parent element is a RegistryKey, this value may be omitted to use the path of the parent, or if its specified it will be appended to the path of the parent.

Attribute: KeyColumn [element Column]

Description

Column in the table in KeyTable attribute.

Derived By

Type integer

Attribute: KeyNoOrphan [element Configuration]

Description

Does not merge rule according to rules in MSI SDK.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: KeyPath [element Component]

Description

If this attribute's value is set to 'yes', then the Directory of this Component is used as the KeyPath.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

To set a Registry key or File as the KeyPath of a component, set the KeyPath attribute to 'yes' on one of those child elements.

Attribute: KeyPath [element File]

Description

Set to yes in order to force this file to be the key path for the parent component.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: KeyPath [element ODBCDataSource]

Description

Set 'yes' to force this file to be key path for parent Component

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: KeyPath [element Registry]

Description

Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only one resource (registry, file, etc) can be the KeyPath of a component.

Attribute: KeyPath [element RegistryValue]

Description

Set this attribute to 'yes' to make this registry key the KeyPath of the parent component.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Only one resource (registry, file, etc) can be the KeyPath of a component.

Attribute: KeyTable [element Column]

Description

Table in which this column is an external key.

Derived By

Type string

Remarks

Can be semicolon delimited.

Attribute: Keywords [element Package]

Description

Optional keywords for browsing.

Derived By

Type string

Attribute: Keywords [element PatchInformation]

Description

Optional keywords for browsing

Derived By

Type string

Attribute: Language [element Merge]

Description

Specifies the decimal LCID or localization token for the language to merge the Module in as.

Derived By

Type LocalizableInteger

Attribute: Language [element Module]

Description

The decimal language ID (LCID) of the merge module.

Derived By

Type LocalizableInteger

Attribute: Language [element Product]

Description

The decimal language ID (LCID) for the product.

Derived By

Type LocalizableInteger

Attribute: Language [element TypeLib]

Description

The language of the type library.

Derived By

Type integer

Remarks

This must be a non-negative integer.

Attribute: Language [element UpgradeVersion]

Description

Specifies the set of languages detected by FindRelatedProducts.

Derived By

Type string

Remarks

Enter a list of numeric language identifiers (LANGID) separated by commas (,). Leave this value null to specify all languages. Set ExcludeLanguages to "yes" in order detect all languages, excluding the languages listed in this value.

Attribute: Languages [element FileSearch]

Description

The languages supported by the file.

Derived By

Type string

Attribute: Languages [element Package]

Description

The list of language IDs (LCIDs) supported in the package.

Derived By

Type string

Attribute: Languages [element PatchInformation]

Description

List of language IDs supported in package

Derived By

Type string

Attribute: Layout [element Media]

Description

This attribute specifies the root directory for the uncompressed files that are a part of this Media element.

Derived By

Type string

Remarks

By default, the src will be the output directory for the final image. The default value ensures the binder generates
an installable image. If a relative path is specified in the src attribute, the value will be appended to the image's output directory. If an absolute path is provided, that path will be used without modification. The latter two options are provided to ease the layout of an image onto multiple medias (CDs/DVDs).

Attribute: LeftScroll [element Control]

Description

Set this attribute to "yes" to cause the scroll bar to display on the left side of the Control.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: LeftScroll [element Dialog]

Description

Used to align the scroll bar on the left.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Length [element IgnoreRange]

Description

Length of the range.

Derived By

Type int

Attribute: Length [element ProtectRange]

Description

Length of the range.

Derived By

Type int

Attribute: Level [element Condition]

Description

Used only under Feature elements and is required.

Derived By

Type integer

Remarks

Allows modifying the level of a Feature based on the result of this condition.

Attribute: Level [element Feature]

Description

Sets the install level of this feature.

Derived By

Type integer

Remarks

A value of 0 will disable the feature. Processing the Condition Table can modify the level value (this is set via the Condition child element).

Attribute: LoadOrderGroup [element ServiceInstall]

Description

The load ordering group that this service should be a part of.

Derived By

Type string

Attribute: Localizable [element Column]

Description

Whether this column can be localized.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: LocalService [element AppId]

Description

Set this value to the name of a service to allow the object to be installed as a Win32 service.

Derived By

Type string

Attribute: Location [element Component]

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
local  Prevents the component from running from the source or the network (this is the default behavior if this attribute is not set).
source  Enforces that the component can only be run from the source (it cannot be run from the user's computer).
either  Allows the component to run from source or locally.

Attribute: LongName [element Directory]

Derived By

Type LongFileNameType

Attribute: LongName [element File]

Derived By

Type LongFileNameType

Attribute: LongName [element FileSearch]

Derived By

Type LongFileNameType

Attribute: LongName [element IniFile]

Derived By

Type LongFileNameType

Attribute: LongName [element IniFileSearch]

Derived By

Type LongFileNameType

Attribute: LongName [element RemoveFile]

Derived By

Type WildCardLongFileNameType

Attribute: LongName [element Shortcut]

Derived By

Type LongFileNameType

Attribute: LongSource [element Directory]

Derived By

Type LongFileNameType

Attribute: MajorVersion [element TypeLib]

Description

The major version of the type library.

Derived By

Type integer

Remarks

The value should be an integer from 0 - 255.

Attribute: Manufacturer [element Package]

Description

The vendor releasing the package.

Derived By

Type string

Attribute: Manufacturer [element Patch]

Description

Vendor releasing the package

Derived By

Type string

Attribute: Manufacturer [element PatchInformation]

Description

Vendor releasing the package

Derived By

Type string

Attribute: Manufacturer [element Product]

Description

The manufacturer of the product.

Derived By

Type string

Attribute: ManufacturerName [element PatchMetadata]

Description

Name of the manufacturer.

Derived By

Type string

Attribute: Mask [element FileTypeMask]

Description

Hex value that is AND'd against the bytes in the file at Offset.

Derived By

Type HexType

Attribute: MaxDate [element FileSearch]

Description

The maximum modification date and time of the file.

Derived By

Type dateTime

Remarks

Formatted as YYYY-MM-DDTHH:mm:ss, where YYYY is the year, MM is month, DD is day, 'T' is literal, HH is hour, mm is minute and ss is second.

Attribute: Maximum [element UpgradeVersion]

Description

Specifies the upper boundary of the range of product versions detected by FindRelatedProducts.

Derived By

Type string

Attribute: MaxSize [element FileSearch]

Description

The maximum size of the file.

Derived By

Type int

Attribute: MaxValue [element Column]

Description

Maximum value for a numeric value, date or version in this column.

Derived By

Type integer

Attribute: MaxVersion [element FileSearch]

Description

The maximum version of the file.

Derived By

Type string

Attribute: MediaSrcProp [element Family]

Description

Entered into the Source field of the new Media table entry of the upgraded image.

Derived By

Type string

Attribute: Message [element Condition]

Description

Used only under Fragment or Product elements and is required.

Derived By

Type string

Remarks

Set the value to the text to display when the condition fails and the installation must be terminated.

Attribute: MigrateFeatures [element UpgradeVersion]

Description

Set to "yes" to migrate feature states from upgraded products by enabling the logic in the MigrateFeatureStates action.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: MinDate [element FileSearch]

Description

The minimum modification date and time of the file.

Derived By

Type dateTime

Remarks

Formatted as YYYY-MM-DDTHH:mm:ss, where YYYY is the year, MM is month, DD is day, 'T' is literal, HH is hour, mm is minute and ss is second.

Attribute: Minimum [element UpgradeVersion]

Description

Specifies the lower bound on the range of product versions to be detected by FindRelatedProducts.

Derived By

Type string

Attribute: MinorUpdateTargetRTM [element Patch]

Description

Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Author this optional property in minor update patches that contain sequencing information to indicate that the patch removes all patches up to the RTM version of the product, or up to the most recent major upgrade patch. This property is available beginning with Windows Installer 3.1.

Attribute: MinorUpdateTargetRTM [element PatchMetadata]

Description

Indicates that the patch targets the RTM version of the product or the most recent major upgrade patch.

Derived By

Type string

Remarks

Author this optional property in minor update patches that contain sequencing information to indicate that the patch removes all patches up to the RTM version of the product, or up to the most recent major upgrade patch. This property is available beginning with Windows Installer 3.1.

Attribute: MinorVersion [element TypeLib]

Description

The minor version of the type library.

Derived By

Type integer

Remarks

The value should be an integer from 0 - 255.

Attribute: MinSize [element FileSearch]

Description

The minimum size of the file.

Derived By

Type int

Attribute: MinValue [element Column]

Description

Minimum value for a numeric value, date or version in this column.

Derived By

Type integer

Attribute: MinVersion [element FileSearch]

Description

The minimum version of the file.

Derived By

Type string

Attribute: Modeless [element Dialog]

Description

Used to set the dialog as modeless.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Modularize [element Column]

Description

How this column should be modularized, if at all.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
None  Column should not be modularized. This is the default value.
Column  Column should be modularized.
Condition  Column is a condition and should be modularized.
Icon  When the column is an primary or foreign key to the Icon table it should be modularized special.
Property  Any Properties in the column should be modularized.
SemicolonDelimited  Semi-colon list of keys, all of which need to be modularized.

Attribute: MoreInfoURL [element Patch]

Description

A URL that provides information specific to this patch.

Derived By

Type string

Remarks

In Add/Remove Programs from XP SP2 on.

Attribute: MoreInfoURL [element PatchMetadata]

Description

A URL that provides information specific to this patch.

Derived By

Type string

Remarks

In Add/Remove Programs from XP SP2 on.

Attribute: Multiline [element Control]

Description

This attribute is only valid for Edit Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Name [element Configuration]

Description

Defines the name of the configurable item.

Derived By

Type string

Attribute: Name [element ConfigurationData]

Description

Key into the ModuleConfiguration table.

Derived By

Type string

Attribute: Name [element Directory]

Description

The name of the directory.

Derived By

Type LongFileNameType

Remarks

Do not specify this attribute (or the LongName attribute) if this directory represents the same directory as the parent (see the Windows Installer SDK's Directory table topic for more information about the "." operator).

In prior versions of the WiX toolset, this attribute specified the short directory name. This attribute's value may now be either a short or long directory name. If a short directory name is specified, the ShortName attribute may not be specified. If a long directory name is specified, the LongName attribute may not be specified. Also, if this value is a long directory name, the ShortName attribute may be omitted to allow WiX to attempt to generate a unique short directory name. However, if this name collides with another directory or you wish to manually specify the short directory name, then the ShortName attribute may be specified.

Attribute: Name [element EmbeddedUI]

Description

The name for the embedded UI DLL when it is extracted from the Product and executed. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)

Derived By

Type LongFileNameType

Remarks

If this attribute is not specified the Id attribute will be used.

Attribute: Name [element EmbeddedUIResource]

Description

The name for the resource when it is extracted from the Product for use by the embedded UI DLL. (Windows Installer does not support the typical short filename and long filename combination for embedded UI files as it does for other kinds of files.)

Derived By

Type LongFileNameType

Remarks

If this attribute is not specified the Id attribute will be used.

Attribute: Name [element Environment]

Description

Name of the environment variable.

Derived By

Type string

Attribute: Name [element Family]

Description

Identifier for the family.

Derived By

Type string

Attribute: Name [element File]

Description

In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.

Derived By

Type LongFileNameType

Remarks

If a short file name is specified, the ShortName attribute may not be specified. If a long file name is specified, the LongName attribute may not be specified. Also, if this value is a long file name, the ShortName attribute may be omitted to allow WiX to attempt to generate a unique short file name. However, if this name collides with another file or you wish to manually specify the short file name, then the ShortName attribute may be specified. Finally, if this attribute is omitted then its default value is the file name portion of the Source attribute, if one is specified, or the value of the Id attribute, if the Source attribute is omitted or doesn't contain a file name.

Attribute: Name [element FileSearch]

Description

In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name.

Derived By

Type LongFileNameType

Remarks

If a short file name is specified, the ShortName attribute may not be specified. If a long file name is specified, the LongName attribute may not be specified. If you wish to manually specify the short file name, then the ShortName attribute may be specified.

Attribute: Name [element IgnoreModularization]

Description

The name of the item to ignore modularization for.

Derived By

Type string

Attribute: Name [element IniFile]

Description

In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.

Derived By

Type LongFileNameType

Remarks

If a short name is specified, the ShortName attribute may not be specified. If a long name is specified, the LongName attribute may not be specified. Also, if this value is a long name, the ShortName attribute may be omitted to allow WiX to attempt to generate a unique short name. However, if this name collides with another file or you wish to manually specify the short name, then the ShortName attribute may be specified.

Attribute: Name [element IniFileSearch]

Description

In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.

Derived By

Type LongFileNameType

Remarks

If a short name is specified, the ShortName attribute may not be specified. If a long name is specified, the LongName attribute may not be specified. Also, if this value is a long name, the ShortName attribute may be omitted to allow WiX to attempt to generate a unique short name. However, if you wish to manually specify the short name, then the ShortName
attribute may be specified.

Attribute: Name [element Interface]

Description

Name for COM Interface.

Derived By

Type string

Attribute: Name [element ODBCDataSource]

Description

Name for the data source.

Derived By

Type string

Attribute: Name [element ODBCDriver]

Description

Name for the driver.

Derived By

Type string

Attribute: Name [element ODBCTranslator]

Description

Name for the translator.

Derived By

Type string

Attribute: Name [element PatchProperty]

Description

Name of the patch property.

Derived By

Type string

Attribute: Name [element Product]

Description

The descriptive name of the product.

Derived By

Type string

Attribute: Name [element Registry]

Description

The localizable registry value name.

Derived By

Type string

Remarks

If this attribute is not provided the default value for the registry key will be set instead. The Windows Installer allows several special values to be set for this attribute. You should not use them in WiX. Instead use appropriate values in the Action attribute to get the desired behavior.

Attribute: Name [element RegistrySearch]

Description

Registry value name.

Derived By

Type string

Attribute: Name [element RegistryValue]

Description

The localizable registry value name.

Derived By

Type string

Remarks

If this attribute is not provided the default value for the registry key will be set instead. The Windows Installer allows several special values to be set for this attribute. You should not use them in WiX. Instead use appropriate values in the Action attribute to get the desired behavior.

Attribute: Name [element RemoveFile]

Description

This value should be set to the localizable name of the file(s) to be removed.

Derived By

Type WildCardLongFileNameType

Remarks

All of the files that match the wild card will be removed from the specified directory. The value is a filename that may also
contain the wild card characters "?" for any single character or "*" for zero or more occurrences of any character. In prior versions of the WiX toolset, this attribute specified the short file name. This attribute's value may now be either a short or long file name. If a short file name is specified, the ShortName attribute may not be specified. If a long file name is specified, the LongName attribute may not be specified. Also, if this value is a long file name, the ShortName attribute may be omitted to
allow WiX to attempt to generate a unique short file name. However, if you wish to manually specify the short file name, then the ShortName attribute may be specified.

Attribute: Name [element RemoveRegistryValue]

Description

The localizable registry value name.

Derived By

Type string

Remarks

If this attribute is not provided the default value for the registry key will be set instead. The Windows Installer allows several special values to be set for this attribute. You should not use them in WiX. Instead use appropriate values in the Action attribute to get the desired behavior.

Attribute: Name [element ServiceControl]

Description

Name of the service.

Derived By

Type string

Attribute: Name [element ServiceInstall]

Description

This column is the string that gives the service name to install.

Derived By

Type string

Attribute: Name [element SFPCatalog]

Description

Filename for catalog file when installed.

Derived By

Type string

Attribute: Name [element Shortcut]

Description

In prior versions of the WiX toolset, this attribute specified the short name. This attribute's value may now be either a short or long name.

Derived By

Type LongFileNameType

Remarks

If a short name is specified, the ShortName attribute may not be specified. If a long name is specified, the LongName attribute may not be specified. Also, if this value is a long name, the ShortName attribute may be omitted to allow WiX to attempt to generate a unique short name. However, if this name collides with another shortcut or you wish to manually specify the short name, then the ShortName attribute may be specified.

Attribute: NeverOverwrite [element Component]

Description

If this attribute is set to 'yes', the installer does not install or reinstall the component if a key path file or a key path registry entry for the component already exists.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

The application does register itself as a client of the component. Use this flag only for components that are being registered by the Registry table. Do not use this flag for components registered by the AppId, Class, Extension, ProgId, MIME, and Verb tables.

Attribute: NoMinimize [element Dialog]

Description

Used to specify if the dialog can be minimized.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: NonNullable [element Configuration]

Description

If yes, null is not a valid entry.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: NoOpen [element ProgId]

Description

Specifies that the associated ProgId should not be opened by users.

Derived By

Type string

Remarks

The value is presented as a warning to users. An empty string is also valid for this attribute.

Attribute: NoPrefix [element Control]

Description

This attribute is only valid for Text Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Notify [element Permission]

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: NoWrap [element Control]

Description

This attribute is only valid for Text Controls.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Nullable [element Column]

Description

Whether this column can be left null.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: NumMethods [element Interface]

Description

Number of methods implemented on COM Interface.

Derived By

Type integer

Attribute: Offset [element FileTypeMask]

Description

Offset into file. If positive, offset is from the beginning; if negative, offset is from the end.

Derived By

Type integer

Attribute: Offset [element IgnoreRange]

Description

Offset of the start of the range.

Derived By

Type int

Attribute: Offset [element ProtectRange]

Description

Offset of the start of the range.

Derived By

Type int

Attribute: On [element RemoveFile]

Description

This value determines the time at which the file(s) may be removed.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
install  Removes the file only when the parent component is being installed (msiInstallStateLocal or msiInstallStateSource).
uninstall  Removes the file only when the parent component is being removed (msiInstallStateAbsent).
both  Removes the file when the parent component is being installed or removed.

Attribute: On [element RemoveFolder]

Description

This value determines the time at which the folder may be removed.

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
install  Removes the folder only when the parent component is being installed (msiInstallStateLocal or msiInstallStateSource).
uninstall  Removes the folder only when the parent component is being removed (msiInstallStateAbsent).
both  Removes the folder when the parent component is being installed or removed.

Attribute: OnExit [element Custom]

Description

Mutually exclusive with Before, After, and Sequence attributes

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
success   
cancel   
error   
suspend   

Attribute: OnExit [element Show]

Description

mutually exclusive with Before, After, and Sequence attributes

Derived By

Restricting NMTOKEN

Enumeration

Value  Description 
success   
cancel   
error   
suspend   

Attribute: OnlyDetect [element UpgradeVersion]

Description

Set to "yes" to detect products and applications but do not uninstall.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: OptimizedInstallMode [element Patch]

Description

If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Available beginning with Windows Installer 3.1.

Attribute: OptimizedInstallMode [element PatchMetadata]

Description

If this attribute is set to 'yes' in all the patches to be applied in a transaction, the application of the patch is optimized if possible.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Remarks

Available beginning with Windows Installer 3.1.

Attribute: OptimizePatchSizeForLargeFiles [element Patch]

Description

When this attribute is set, patches for files greater than approximately 4 MB in size may be made smaller.

Derived By

Type YesNoType

Enumeration

Value  Description 
no   
yes   

Attribute: Order [element ExternalFile]

Description

Specifies the order of the external files to use when creating the patch.

Derived By

Type int

Attribute: Order [element Publish]

<