Подходят ли проекты установки Visual Studio для сложных установок? - PullRequest
17 голосов
/ 20 марта 2010

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

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

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

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

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

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

Ответы [ 2 ]

23 голосов
/ 20 марта 2010

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

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

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

8 голосов
/ 21 марта 2010

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

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

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

...