WiX Toolset

RegistryValue Element

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

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.
Windows Installer references
Registry Table
Parents
Component, Registry, RegistryKey
Inner Text (xs:string)
This element may have inner text.
Children
Choice of elements (min: 0, max: unbounded)
  • MultiStringValue (min: 0, max: unbounded)
  • Permission (min: 0, max: unbounded)
  • PermissionEx (min: 0, max: unbounded): Can also configure the ACLs for this registry value.
  • Any Element (namespace='##other' processContents='Lax') Extensibility point in the WiX XML Schema. Schema extensions can register additional elements at this point in the schema.
Attributes
Name Type Description Required
Action Enumeration This is the action that will be taken for this registry value. This attribute's value must be one of the following:
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.
 
Id String Primary key used to identify this particular entry. If this attribute is not specified, an identifier will be generated by hashing the parent Component identifier, Root, Key, and Name.  
Key String The localizable key for the registry value. 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.  
KeyPath YesNoType Set this attribute to 'yes' to make this registry key the KeyPath of the parent component. Only one resource (registry, file, etc) can be the KeyPath of a component.  
Name String The localizable registry value name. 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.  
Root RegistryRootType The predefined root key for the registry value.  
Type Enumeration Set this attribute to the type of the desired registry key. This attribute must be specified whenever the Value attribute or a child RegistryValue element is specified. This attribute should only be set when the value of the Action attribute does not include the word 'remove'. This attribute's value must be one of the following:
string
The value is interpreted and stored as a string (REG_SZ).
integer
The value is interpreted and stored as an integer (REG_DWORD).
binary
The value is interpreted and stored as a hexadecimal value (REG_BINARY).
expandable
The value is interpreted and stored as an expandable string (REG_EXPAND_SZ).
multiString
The value is interpreted and stored as a multiple strings (REG_MULTI_SZ). Please note that this value will only result in a multi-string value if there is more than one registry value or the Action attribute's value is 'append' or 'prepend'. Otherwise a string value will be created.
 
Value String Set this attribute to the localizable registry value. This value is formatted. 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 Type attribute to get the desired behavior.  
How Tos and Examples
See Also
Wix Schema