Подтвердить что ты не робот

Проекты Visual Studio Setup подходят для сложных настроек?

Являются ли проекты "Visual Studio Setup" подходящими для сложных настроек в разных версиях?

Приложение довольно большое ( > 500 000 строк кода) и находится в непрерывном развитии. Каждые 6-10 месяцев выпускается новая версия. У нас есть несколько файлов конфигурации (INI и XML), ключи реестра, сценарии миграции базы данных и т.д. Приложение находится в процессе переноса из Visual Basic 6.0 в .NET. Старый установщик был создан с Installshield. Обратная связь Installshield: Плохая адаптивность, плохое повторное использование - вот почему мы оцениваем "установку Visual Studio" в качестве альтернативы.

Другие продукты, которые мы рассматриваем:

Бесплатные решения

Коммерческие решения

Решения, которые мы не любим рассматривать:

  • Inno Setup (это просто не кажется правильным)
4b9b3361

Ответ 1

Нет, нет, нет и нет для проектов развертывания Visual Studio. Я был там в "больших" проектах (15 000 файлов с тысячами модулей слияния и сотни пользовательских действий InstallUtil, потому что VDPROJ практически не предоставляет основную MSI, например создание сервисов). Я мог бы продолжать часами о том, насколько это ужасно.

У меня есть команда из четырех разработчиков, и мы используем сочетание WiX и InstallShield. Наша типичная установка имеет почти 100 функций, 800 модулей слияния и 15 000 файлов. Мы развертываем почти все типы ресурсов, которые вы можете себе представить, включая цепочки сторонних установок для создания полных продуктов или систем. Мы можем сделать это для более чем дюжины продуктов, каждая из которых построена из нескольких веток по интеграции, выпуску и обслуживанию. Четверо из нас поддерживают организацию более 400 человек, в которой работает около 250 разработчиков.

Мы можем это сделать, потому что InstallShield действительно может дать вам много повторного использования. Для создания инкапсуляции групп файлов и бизнес-логики используются конфигурации продуктов и функции/слияния модулей. Тем не менее, WiX делает лучшую работу (хотя гораздо труднее учиться и показывать дыры здесь и там, что нам по-прежнему нужен InstallShield), поэтому мы, по возможности, медленно переходим к базовому уровню до WiX.

Ответ 2

Не ходи туда! Мы думали, что это возможно для нескольких простых инсталляторов, но это оказалось кошмаром... На первый взгляд проекты VS-установки выглядят нормально, но вскоре вы поймете различные недостатки - это означает, что вы напишете кучу кода пользовательского действия для выполнения только самых простых задач (например, обработка и установка сервисов в четко определенные специальные каталоги, которые просто недоступны из графического интерфейса проекта "хороший" ).

Вы можете использовать только некоторые очень простые формы, чтобы получить пользовательский ввод (например, ввод пароля невозможен). Нет автоматического увеличения числа версий установщика. Обработка файлов ужасна - вам приходится вручную выбирать каждый файл. То есть вы не можете просто сказать "установить все файлы в этом каталоге в этот каталог" - фантастическая задача сесть и вручную сканировать новые файлы в каталоге с сотнями файлов.

Нет, идите на WiX, хотя кривая обучения может показаться немного хуже, чем для установщиков VS, но я неоднократно сожалел об этом, что мы этого не сделали.