Таблица 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 записей файлов.
Проверка