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.

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

 

Columns

Signature_

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.

Root

The predefined root key for the registry value.

ConstantHexadecimalDecimalRoot key
msidbRegistryRootClassesRoot0x0000HKEY_CLASSES_ROOT
msidbRegistryRootCurrentUser0x0011HKEY_CURRENT_USER
msidbRegistryRootLocalMachine0x0022HKEY_LOCAL_MACHINE
msidbRegistryRootUsers0x0033HKEY_USERS

 

Key

The key for the registry value.

Name

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

Type

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.

ConstantHexadecimalDecimalDescription
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.

 

Remarks

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_EXPAND_SZ"#%"
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.

Validation

ICE03
ICE06
ICE46
ICE80

 

 

Community Additions

ADD
Show:
© 2014 Microsoft