Я работаю над новой функцией для нашего продукта, компонент которой имеет довольно серьезные последствия для безопасности: он работает как служба WCF и выполняет некоторые высокопривилегированные действия. Поэтому я хотел бы, чтобы этот компонент устанавливался только тогда, когда он требуется пользователю (и удаляется, когда он больше не требуется), и чтобы установка выполнялась программно.
Я изучил рекламу (в частности, назначенные установки), и, похоже, это хороший механизм для достижения этой цели. Я не уверен, что установка объявленной функции может быть отменена , однако, это было бы полезно для удаления компонента, когда он больше не требуется. Я также не совсем уверен, может ли программная установка быть достигнута с помощью рекламы: рекламируемые классы COM, похоже, не поощряются .
Поэтому мне интересно, если бы более разумным был простой вызов msiexec для установки / удаления компонента. Компонент может быть упакован в отдельный MSI или как отдельная функция нашего основного MSI.
Какие методы вы использовали для установки функций по требованию?