Таблицы поиска
Таблицы поиска
Таблицы поиска используются для поиска файлов и приложений на компьютере пользователя. Чтобы найти файл, нужно сначала задать сигнатуру файла, а затем произвести поиск. Таблицы этой группы можно использовать для поиска в реестре, в данных конфигурации инсталлятора, по дереву каталогов или в .ini-файлах. При этом ищется файл или каталог с заданной уникальной сигнатурой. Затем, если файл найден, его сигнатура проверяется по таблице Signature, чтобы убедиться, что данный файл действительно тот, который нужен, а не просто еще один файл с таким же именем. Если запись в таблице поиска не связана с таблицей Signature, значит, запись ссылается на каталог, а не на файл.
Компонент, которому принадлежит нужный файл, определяется через связь между таблицами File и Component. Installer определяет подчиненность файла через таблицу компонентов, потому что каждый файл связан с одним компонентом. Местоположение компонента определяется по внешнему ключу в таблице Component, указывающему на таблицу Directory.
Нужные приложения ищутся аналогично: при этом находятся определенные файлы, из которых состоит приложение. Installer также предоставляет две таблицы, позволяющие искать предыдущие версии приложений: AppSearch и CCPSearch.
Группа таблиц поиска состоит из 7 таблиц, описание которых дано ниже:
Имя таблицы Краткое описание Signature Содержит информацию, уникальным образом описывающую некоторый файл 1 RegLocator Эта таблица содержит информацию, необходимую для поиска файлов или каталогов по записям в реестре IniLocator Эта таблица используется для поиска .ini-файлов. Эти файлы должны быть расположены в корневом каталоге Windows CompLocator Эта таблица используется для поиска файлов или каталогов с использованием конфигурационных данных Windows Installer DrLocator Эта таблица используется для поиска по дереву каталогов AppSearch Эта таблица содержит список свойств, которые должны быть установлены, если нужный файл или каталог с заданной сигнатурой найден CCPSearch Эта таблица содержит список сигнатур файлов, из которых хотя бы один должен быть установлен на пользовательском компьютере. Таблица используется при обновлении программПРИМЕЧАНИЕ
1. Формально по документации Microsoft таблица Signature не относится к группе таблиц поиска. Но так как она нигде, кроме поиска, не используется, я позволил себе внести ее в эту группу.