После преобразования решения в vs2008 с 2005 года мой msi начал вести себя по-другому.
Не все dll переписываются, и если я запускаю msi из другого процесса (с createProcess), он завершается неудачно (говоря smt как «пакет возвратил неожиданное значение»), и установка откатывается.
Я понимаю, что это типичная проблема, и решения:
- пометить упакованные dll
с * на версии (то есть x.x. *)
- увеличить номер версии
MSI, чтобы заставить переписать
Я пробовал с решением 2, но, к моему удивлению, я получаю всевозможные ошибки при сборке при сборке с помощью devenv (я использую devenv на круиз-контроле, все хорошо с msbuild из Visual Studio).
Теперь я собираюсь попробовать решение 1 - но я был бы признателен за любые предложения / идеи для альтернативных решений.