Я установил установщик для нашего продукта. Установщику нужны права администратора , поэтому я использовал setup bootstrapper с файлом манифеста (как рекомендовано здесь ), чтобы получить эти привилегии на машинах Windows с включенным UAC. Установка и удаление проходят нормально - у пользователя запрашивается разрешение, а установщик делает то, что ему нужно.
Но если вы запускаете Панель управления → Программы и компоненты и выбираете «Изменить» * для установленной программы, возникает ошибка (пользовательская, из установщика LaunchConditions ), сообщая, что установщику нужны права администратора. И я не могу найти способ запросить разрешение в таком случае - Windows просто запускает файл MSI и ничего не знает о необходимых разрешениях.
Еще более странным является функционал восстановления - он запрашивает разрешение, но затем не может выполнить некоторые действия, которые были разрешены во время установки, с использованием SetupBootstrapper.
Я нашел похожую проблему здесь :
Но предлагаемые решения в нашем случае неприемлемы.
Единственный обходной путь для изменения функциональности теперь состоит в том, чтобы всегда использовать SetupBootstrapper и не использовать меню Программы и компоненты , но это не очень удобно и вынуждает пользователя держать установщик на своем / ее жесткий диск.
Кто-нибудь лучше посоветует?
PS: я использую WiX для создания установщика, поэтому было бы здорово услышать о решениях WiX, но я уверен, что это не зависит от языка создания установщика, а только по специфике MSI.