Suite/Advanced UI muiltiple пакеты
В моей компании много инсталляторов MSI, которые я хочу объединить в один MSI.
Я понимаю, что проект Suite/Advanced UI может соответствовать этому требованию. Я создал проект, добавил 2 разных пакета и назначил им функции.
Я хочу просмотреть функции, которые есть у каждого MSI, возможно, загрузить его диалог в проект Suite, но я не могу найти способ сделать это, но только построил новый диалог, который сохранит свойства и передаст их подчиненным MSI.
Если это единственное, что является целью проекта Suite, я не могу сделать это в стандартном MSI или некотором коде C# для запуска всех моих MSI
Я ошибся?
1 ответ
На этот вопрос есть несколько частей, поэтому я собираюсь ответить на них на высоком уровне. Это должно помочь вам выяснить, что вы хотите более подробно, чтобы вы могли задать это в новом вопросе.
Можно связать функции Suite/Advanced UI с функциями MSI, но я не очень рекомендую это. В этом сообщении есть много предостережений. Мы обнаружили, что, как правило, лучше работать над тем, чтобы ваши MSI были элементами функционального уровня, так что весь данный MSI, являющийся частью пакета, либо устанавливается, либо пропускается.
Вы правы, что невозможно динамически исследовать функции пакета MSI. Вы можете создавать страницы с элементами управления, которые ссылаются на свойства или функции Suite, но вы по-прежнему возвращаетесь к предостережениям из приведенного выше поста.
Проект Suite/Advanced UI разработан с целью унифицировать интерфейс UI для установки нескольких пакетов, независимо от того, переносятся они локально или загружаются по требованию. Если все они являются пакетами MSI и вам требуется Windows Installer 4.5, он может установить их с помощью обработки транзакций. Вы абсолютно правы в том, что вы можете написать свой собственный загрузчик для этого или просто написать скрипт для установки нескольких пакетов MSI подряд, но для этого требуются обычные компромиссы. (Это может дать лучшую подгонку, но, вероятно, потребуется гораздо больше работы, если вы хотите скопировать все уже предоставленные функции.)