Таблица reglocator

Таблица RegLocator содержит сведения, необходимые для поиска файла или каталога с помощью реестра или для поиска конкретной записи реестра. Эта таблица содержит следующие столбцы.

Столбец Type Ключ Допускает значения NULL
Подпись_ Идентификатор Да N
Root Целое число Нет Нет
Ключ RegPath N Нет
Имя Форматированные Нет Да
Тип Целое число Нет Да

 

Столбцы

Подпись_

Значение в поле Signature_ представляет уникальную сигнатуру, которая является внешним ключом в столбце таблицы Signature . Если эта сигнатура присутствует в таблице Signature, выполняется поиск файла. Если эта сигнатура отсутствует в таблице Signature и значение столбца Type имеет значение msidbLocatorTypeRawValue, поиск выполняется по имени раздела реестра, на которое указывает таблица RegLocator. В противном случае выполняется поиск каталога, на который указывает таблица RegLocator.

Корневой

Предопределенный корневой раздел для значения реестра.

Константа Шестнадцатеричный Decimal Корневой ключ
msidbRegistryRootClassesRootRoot 0x000 0 HKEY_CLASSES_ROOT
msidbRegistryRootCurrentUser 0x001 1 HKEY_CURRENT_USER
msidbRegistryRootLocalMachine 0x002 2 HKEY_LOCAL_MACHINE
msidbRegistryRootUsers 0x003 3 HKEY_USERS

 

Ключ

Раздел для значения реестра.

Имя

Имя значения реестра. Если это значение равно NULL, извлекается значение из неименованного или значения по умолчанию ключа, если оно имеется.

Тип

Значение , определяющее, является ли значение реестра именем файла, расположением каталога или необработанным значением реестра.

В следующей таблице перечислены допустимые значения. При необходимости задайте одно из первых трех значений и msidbLocatorType64bit . Если запись в этом поле отсутствует, параметр Type имеет значение 1.

Константа Шестнадцатеричный Decimal Описание
msidbLocatorTypeDirectory 0x000 0 Путь к ключу — это каталог.
msidbLocatorTypeFileName 0x001 1 Путь к ключу — это имя файла.
msidbLocatorTypeRawValue 0x002 2 Путь к ключу — это значение реестра.
msidbLocatorType64bit 0x010 16 Задайте для этого бита, чтобы установщик выполнял поиск в 64-разрядной части реестра. Не устанавливайте этот бит, чтобы установщик выполнял поиск в 32-разрядной части реестра.

 

Комментарии

Обратите внимание, что если значением в поле Type является msidbLocatorTypeRawValue, установщик устанавливает значение свойства, указанного в поле Свойство таблицы AppSearch , значением реестра. Установщик добавляет префикс к значению реестра, который определяет тип значения реестра. Дополнительные сведения о типах значений реестра см. в разделе Типы значений реестра.

Тип реестра Префикс, добавленный установщиком
REG_SZ Нет, но если первым символом в значении реестра является #, установщик экранирует символ, префиксируя другой #.
DWORD "#" при необходимости, за которым следует "+" или "-"
REG_EXPAND_SZ "#%"
REG_MULTI_SZ NULL. Установщик присваивает свойству значение, начинающееся с null и заканчивающееся значением NULL.
REG_BINARY "#x" В случае REG_BINARY установщик преобразует и сохраняет каждую шестнадцатеричную цифру (nibble) в виде символа ASCII с префиксом "#x".

 

Как правило, столбцы в этой таблице не локализованы. Если автор решает искать продукты на нескольких языках, в таблице должна быть отдельная запись для каждого языка.

Обратите внимание, что нельзя использовать таблицу RegLocator для проверка только для наличия ключа. Однако можно найти значение ключа по умолчанию и получить его значение, если оно не является пустым.

Дополнительные сведения см. в разделе Поиск существующих приложений, файлов, записей реестра или .ini записей файлов.

Проверка

ICE03
ICE06
ICE46
ICE80