Заставить MSI перезаписывать сборки при установке - PullRequest
1 голос
/ 26 декабря 2010

С Рождеством, StackOverflowians!

Я начал распространять свою программу, расположенную на GAC, используя Inno Setup, но из-за ее различных недостатков я хочу перейти на MSI для следующей версии.К сожалению, похоже, что это станет серьезной проблемой для моих существующих пользователей ... Конечно, мне придется настаивать на том, чтобы мои пользователи вручную удалили предыдущую версию перед установкой новой.Но, похоже, что даже если предыдущая версия полностью удалена, это все еще проблематично.

Я не знаю, неправильно ли я что-то настроил, или Inno Setup просто глупа, но похоже, что Inno делаетне полностью удалить сборки.В результате, когда я пытаюсь запустить программу установки MSI, я вижу в журнале даже после удаления следующее: skipping installation of assembly component: {guid} since the assembly already exists

Так что мне здесь делать?Есть ли способ заставить MSI перезаписать сборки, даже если они уже существуют?

1 Ответ

2 голосов
/ 26 декабря 2010

Создайте свои DLL с таким же строгим именем (AssemblyVersion), но с более высокой версией файла (AssemblyFileVersion). Будьте осторожны, чтобы ваши классы были на 100% обратно совместимы, поскольку старая DLL будет заменена.

...