Таблица IsolatedComponent
Каждая запись таблицы IsolatedComponent связывает компонент, указанный в столбце Component_Application (обычно это .exe), с компонентом, указанным в столбце Component_Shared (обычно это общая библиотека DLL). Действие IsolateComponents устанавливает копию Component_Shared в частное расположение для использования Component_Application. Это изолирует Component_Application от других копий Component_Shared, которые могут быть установлены в общем расположении на компьютере. См. раздел Изолированные компоненты.
Чтобы связать одну Component_Shared с несколькими Component_Application, включите отдельную запись для каждой пары в таблицу IsolatedComponents. Установщик копирует файлы Component_Shared в каталог каждой установленной Component_Application.
Таблица IsolatedComponent содержит следующие столбцы.
Столбец | Type | Ключ | Допускает значения NULL |
---|---|---|---|
Component_Shared | Идентификатор | Да | Нет |
Component_Application | Идентификатор | Да | Нет |
Столбцы
-
Component_Shared
-
Внешний ключ в таблице Компонент. Компонент, содержащий общий файл, обычно это библиотека DLL. Библиотека DLL должна быть файлом ключа для этого компонента. Это должен быть другой компонент, отличный от указанного в столбце Component_Application.
Общий компонент управляет регистрацией всех изолированных копий компонента и должен иметь флаг msidbComponentAttributesSharedDllRefCount в столбце Атрибуты таблицы Компонент. Это гарантирует, что установщик может управлять жизненным циклом общего компонента.
-
Component_Application
-
Внешний ключ в таблице Компонент. Компонент, содержащий .exe, который загружает общий файл. .exe должен быть файлом ключа для этого компонента. Это должен быть другой компонент, отличный от указанного в столбце Component_Shared.
Проверка