Объединение модулей и GUID компонента - PullRequest
0 голосов
/ 31 августа 2010

Я прочитал блог-пост http://robmensching.com/blog/posts/2003/10/18/Component-Rules-101, который очень хорошо освещает.

Однако у меня все еще есть несколько вопросов:

Какова область действия GUID компонента?Как все это связано с использованием модулей слияния в разных установщиках?

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

Что если я удалю второе установленное приложение?Как это повлияет на первое приложение?

Я попробовал этот сценарий, и файлы в первом установленном приложении все еще существуют после удаления второго установленного приложения (что ожидается), но удаляются при удалении первого установленного приложения, чего я не ожидал: после того, как все данные компонента были обновлены вторым установщиком, который уже удален.

Может кто-нибудь уточнить это, пожалуйста?

1 Ответ

1 голос
/ 31 августа 2010

Это называется Shared Components, и GUID распространяется на продукт.Как правило, вы должны быть в порядке.Я делаю это все время:

FOO.MSM mergeredirectfolder \ bin \ foo.dll

P1.MSI [ProgramFilesFolder \ Company \ P1] <--- FOO.MSM P2.MSI [ProgramFilesFolder \ Company \ P2] <--- FOM.MSM </p>

Подробнее об этом читайте:

Об общих компонентах - Хит Стюарт

...