Кнопка "Предварительные условия" отключена - установщик MSI

Я создал установщик MSI. Я хочу дополнительно добавить предварительные условия (например,.Net), но когда я иду в настройки свойств проекта, кнопка Предварительные условия отключается. Как мне это включить?

Другие детали:

  • Я использую VS 2015, SQL Server 2008 R2, .Net 4.5.2, C#, WinForms, Win 10 Pro x64
  • Мой проект установки находится в том же решении, что и основной проект

1 ответ

Решение

Предварительные требования в проектах Visual Studio

В Configuration в верхней части диалогового окна, вы пытались выбрать либо Release или же Debug? Это должно позволить Prerequisites... кнопка.

Диалог свойств проектов Visual Studio


Ненужные, устаревшие предпосылки?

Один из моих любимых мотивов: действительно ли необходимо включать среду выполнения.NET в качестве предварительного условия, когда большинство пользователей устанавливают ее своей группой развертывания (корпорации) или через Центр обновления Windows (домашний и небольшой офис)?

Если есть обновления безопасности для среды выполнения, ваша старая встроенная среда выполнения - просто неприятность, если честно. Корпоративные упаковщики тратят много времени на устранение времени выполнения и предварительных условий для корпоративного развертывания, где все компоненты времени выполнения упакованы отдельно в стандартном корпоративном формате. Возможно, стоит подумать о создании специальной корпоративной версии для крупномасштабного развертывания вашего комплекта установки? Будем очень благодарны за архив с компонентами и PDF-файл с одной страницей о том, как их развернуть.

Для.NET Framework вы можете просто добавить условие запуска, чтобы прервать установку, если среда выполнения не найдена, и указать пользователю, чтобы получить среду выполнения через Центр обновления Windows или от своего системного администратора или группы развертывания.

Просто мысль, которую я хотел бы поделиться с вами. Предварительные условия действительно могут раздуть установку, особенно когда они почти никогда не нужны, как.NET Framework. В будущем мы, безусловно, будем извлекать необходимые пакеты прямо из онлайн-репозиториев и не будем встраивать что-либо в наши основные установки (и, возможно, будем бороться с новыми проблемами безопасности при таком подходе).


WiX и другие технологии развертывания

Проекты установки довольно ограничены. Если вам понадобятся дополнительные функции, вы можете воспользоваться инструментарием WiX.

Вот предыдущий ответ о WiX и других инструментах развертывания, который, кажется, был полезен для людей: MSI против пакетов nuget: что лучше для непрерывной доставки?