Поделиться через


Сделать COM-компонент в существующем пакете частным

Администратор может заставить приложение COM-клиента всегда использовать одну и ту же копию COM-сервера в существующем пакете — без воздействия на другие приложения — указав отношения изолированные компоненты между COM-сервером и клиентом. При этом устанавливается частная копия компонента COM-сервера в расположение, используемое исключительно клиентским приложением. Администратору необходимо использовать преобразования или средство разработки пакетов для выполнения следующих действий:

  • Поместите DLL файл COM-сервера и клиента .exe в отдельные компоненты.
  • Введите запись в таблице IsolatedComponent с компонентом COM-клиента в столбце Component_Shared и клиентским приложением в столбце Component_Application. Включите действие IsolateComponents в таблицы последовательностей.
  • Установите бит msidbComponentAttributesSharedDllRefCount в таблице Component для записи Component_Shared. Установщику требуется глобальная ссылка на общее расположение для защиты общих файлов и регистрации в случаях, когда существует общий доступ к другим технологиям установки.