Я не знаю, как это сделать. В большинстве случаев это было бы невозможно. Проекты установки и развертывания Visual Studio настраивают свои собственные действия .net для запуска «отложено», то есть они запускаются после удаления объектов установки msi. Вот список возможных операций в этом контексте.
Чтобы убедиться, что ваши пользовательские действия .net выполняются с задержкой, используйте Orca , чтобы открыть файл msi и перейти к таблице CustomAction. Если InstallUtil (служебная библиотека VS, помещаемая VS в таблицу «Binary» MSI и предоставляющая MSI точку входа «C», которая обращается к точкам входа установки сборщика .NET), в качестве действий используется «3073». «Тип», это означает, что они выполняются как отложенное выполнение (3073 - msidbCustomActionTypeInScript + msidbCustomActionTypeNoImpersonate + msidbCustomActionTypeDll.)
Если вы создаете пользовательское действие «C» в DLL и помещаете его в MSI с типом «1», вы можете выполнить его во время последовательности установки и изменить свойства. К сожалению, установочный проект VS не поддерживает это; насколько я могу судить, он запускает каждое пользовательское действие, отложенное до конца.