Лучше всего иметь отдельные функции в установщике.Под каждой функцией вы можете иметь компоненты (один компонент на dll, пожалуйста), которые составляют каждый тип хостинга.Тогда вы также можете настроить любые пользовательские действия на в зависимости от состояния действия компонента
Если вы еще не разделили всю служебную логику на собственную сборку, на которую могут ссылаться хост-проекты(Веб-сервисы, Win-сервис и т. Д.).Таким образом, в чрезвычайно упрощенном списке выходных файлов вы должны иметь:
- Common.dll
- IIS.svc file
- IIShost.dll
- Windows Service.exe
- Self host.exe?
Было бы возможно, чтобы все их целевые каталоги были одинаковыми, но, вероятно, имеет смысл иметь каталогпо типу хостинга.В этом случае Common.dll нужно будет скопировать в каждую папку, а для каждого местоположения потребуется отдельный компонент wix.
Будет работать пользовательский интерфейс по умолчанию, использующий дерево выбора функций, но я не верю, что вы можете заставитьвыбрав только одну функцию.Если вы хотите перейти к более индивидуальному выбору функций, вам следует начать с чтения этого