RegLocator Table
Collapse the table of content
Expand the table of content

RegLocator Table

The RegLocator table holds the information needed to search for a file or directory using the registry, or to search for a particular registry entry itself. This table has the following columns.

Signature_ Identifier YN
Root Integer NN
Key RegPath NN
Name Formatted NY
Type Integer NY




The value in the Signature_ field represents a unique signature that is an external key into column one of the Signature table. If this signature is present in the Signature table, the search is for a file. If this signature is absent from the Signature table, and the value of the Type column is msidbLocatorTypeRawValue, the search is for the registry key name pointed to by the RegLocator table. Otherwise the search is for a directory pointed to by the RegLocator table.


The predefined root key for the registry value.

ConstantHexadecimalDecimalRoot key



The key for the registry value.


The registry value name. If this value is null, then the value from the key's unnamed or default value, if any, is retrieved.


A value that determines if the registry value is a file name, a directory location, or raw registry value.

The following table lists valid values. Set one of the first three values and msidbLocatorType64bit if necessary. If the entry in this field is absent, Type is set to be 1.

msidbLocatorTypeDirectory0x0000Key path is a directory.
msidbLocatorTypeFileName0x0011Key path is a file name.
msidbLocatorTypeRawValue0x0022Key path is a registry value.
msidbLocatorType64bit0x01016Set this bit to have the installer search the 64-bit portion of the registry. Do not set this bit to have the installer search the 32-bit portion of the registry.



Note that if the value in the Type field is msidbLocatorTypeRawValue, the installer sets the value of the property specified in the Property field of the AppSearch table to the registry value. The installer adds a prefix to the registry value that identifies the type of registry value. For more information about types of registry values, see Registry Value Types.

Registry typePrefix added by Installer
REG_SZNone, but if the first character of the registry value is #, the installer escapes the character by prefixing a another #.
DWORD"#" optionally followed by '+' or '-'
REG_MULTI_SZNull. The installer sets the property to a value beginning with a null and ending with a null.
REG_BINARY"#x" In case of REG_BINARY, the installer converts and saves each hexadecimal digit (nibble) as an ASCII character prefixed by "#x".


Typically, the columns in this table are not localized. If an author decides to search for products in multiple languages, then there must be a separate entry included in the table for each language.

Note that it is not possible to use the RegLocator table to check only for the presence of the key. However, you can search for the default value of a key and retrieve its value if it is not empty.

For more information, see Searching for Existing Applications, Files, Registry Entries or .ini File Entries.





Community Additions

© 2015 Microsoft