2009-03-03 11 views
2

Я занимаюсь разработкой установки для пакета приложений с помощью WIX, и структура следующим образом:
основного приложения
        | _ _ Flavor1
        | _ _ Flavor2
        | _ _ Flavor3
WIX инсталлятор с несколькими записей в Add/Remove Programs

Application Core - продукт, подобный Visual Studio, и ароматизаторы 1,2,3 являются подфайлами под ним.

Это моя проблема,
- In Добавить программы программы должны содержать 4 записей для Application Core, Flavor1, Flavor2 и, Flavor3.
- Я должен иметь возможность перезагрузить установщик для добавления/удаления Flavor1, Flavor2 и Flavor3.

+0

Возможно, вы захотите уточнить, что вы подразумеваете под «структурой». Являются ли линии, на которые вы рисуете зависимости? Раскладка каталога? Что-то другое? –

ответ

5

Update: Обратите внимание, что в то время как Управление появляется установить отдельные функции, а не отдельные продукты - это на самом деле устанавливает множество отдельных продуктов, которые не отображаются в ARP. Добавлена ​​отдельная запись ARP для запуска установщика bootstrapper, который затем поддерживает добавление, удаление и обновление существующих продуктов, которые вы не видите в ARP.

Это должны быть функции, а не отдельные продукты. Возьмите пакет Microsoft Office, например, если вы установите пакет, то у вас есть только одна запись в «Установка и удаление программ», Word, Excel, Powerpoint и т. Д. - все это «функции» от Microsoft Office, и вы обновляете их таким образом.

Однако вы можете приобрести некоторые из этих приложений отдельно со своими установщиками, и в этих случаях «Ядро приложения», как вы выразите, включено в каждый установщик с использованием общих компонентов, чтобы файлы не нужно было устанавливать дважды и каждое приложение может быть установлено/удалено независимо друг от друга.

Вот небольшой отрывок из документации установщика Windows на Components and Features (вы можете также прочитать Organizing Applications into Components)

Два компонента, которые разделяют один и тот же идентификатор компонента рассматриваются как нескольких экземпляров одного и того же компонента независимо от их фактического содержания. На компьютере пользователя установлен только один экземпляр любого компонента . Таким образом, некоторые функции или приложения могут делиться некоторыми компонентами .

2

Обычно это делается путем установки одного продукта, поэтому одна запись в «Установка и удаление программ», которую вы можете изменить (выберите продукт, нажмите кнопку «Изменить»). Затем вы попадаете в дерево функций, где вы можете добавлять или удалять функции.

Если отдельные записи являются жестким требованием, вы должны создать несколько MSI. Но тогда вы можете удалить «Application Core» в вашем примере, сохраняя другие установили, что вызывает проблемы с Flavors

0

Звучит так, как будто вы хотите использовать функции, поэтому Сандер получает мой +1.

Но иногда вам могут потребоваться разные установки одного и того же продукта, например. тестовую версию, установленную на том же сервере. В этих случаях вам нужно найти другой подход, here's one Я придумал (см. Ответ Create Live, ...). Обратите внимание на редактирование о создании компонента для каждого файла и подстановочный знак guid, поскольку это упрощает процесс, т. Е. Не требуется никаких трюков BeforeBuild/AfterBuild.

 Смежные вопросы

  • Нет связанных вопросов^_^