У меня есть приложение С++, разработанное с использованием Visual Studio 2015, вместе с установщиком Wix и Burnstrapper Burn. Предыдущие версии приложения могли использовать модуль слияния Visual Studio для установки необходимых предварительных условий, но, похоже, это не вариант при использовании Visual Studio 2015 (см. Распространяемые материалы для развертывания С++ exe, разработанный с помощью Visual Studio 2015 в Windows 7).
Следуя советам по этой ссылке, мы начали установку vcredist с Burn с помощью ExePackage с virtual = "yes". Это в основном работает отлично - у нас было несколько клиентов, у которых нет сбоев в установке из-за различных проблем с vcredist. До недавнего времени это были ошибки, которые должны были привести к сбою установки.
В течение последних нескольких дней мы получили несколько отчетов об отказе нашего установщика из-за того, что была установлена более новая версия распространяемого: vcredist с кодом ошибки 0x80070666, что приводит к сбою нашего загрузчика.
Мои вопросы:
- Развертывает ли vcredist "правильный" подход? (Предполагая, что нам нужен один установщик exe)
- Как мы можем определить, какая версия распространяемых компонентов (не обязательно в загрузочном файле, это информация, хранящаяся в удобной для пользователя форме)?
- Существует ли более новая версия распространяемых материалов, которые мы должны распространять? (В настоящее время используется 14.0.23026). Это основано на версии Visual Studio, которая используется для компиляции или всегда должна распространять последнюю версию? (Текущая версия VS 14.0.23107.0)
- В качестве последнего средства можно определить код ошибки, возвращаемый из vcredist, и разрешить это значение для определения того, продолжается ли установка или не выполняется?