wix - установщик или патч-установщик - PullRequest
0 голосов
/ 29 марта 2011

У меня уже есть установщик для нашего приложения. но это exe-файл. он был создан много лет назад .. приложение, конечно, было обновлено. мы использовали bat-файл для регистрации новых dll-файлов и для установки нашего сервиса (windows). но мы хотим сделать все это установщиком, а не bat-файлом. мы выбрали технологию wix. Я прочитал о <Patch> узле, но чтобы использовать его, мне нужен MSI из предыдущей версии .. Я думаю сделать простой установщик, который остановит службу, скопирует и зарегистрирует dll в каталоге установленного приложения, установит службу. но я не знаю, перезапишет ли он файлы без проблем?

Ответы [ 2 ]

2 голосов
/ 29 марта 2011

Вы можете создать MSP (Patch) только для MSI (Installer).Кроме того, вы столкнетесь с проблемами подсчета ссылок на компоненты, если вы установите их в тот же каталог, что и исходная установка.Проблема в том, что MSI увидит, что файл уже существует, сделает его общим ресурсом и увеличит счетчики использования.Затем при удалении он будет уменьшаться, видеть, что это не 0, и удалять для удаления файлов.

Я бы предложил установить в новый каталог, а затем использовать таблицу RemoveFile, чтобы избавиться от старых файлов.Также я бы рекомендовал следовать хорошим практикам CM / Versioning, чтобы вам не приходилось беспокоиться о хакерских атаках, таких как Version Lying.

Если все ваше приложение просто нуждается в xcopy файлах, настройте каталог и, возможно,ShortCut, это должен быть кусок пирога.

0 голосов
/ 29 марта 2011

Версионные файлы, такие как исполняемые файлы, будут автоматически перезаписаны, если номер версии файла меньше.

См. Также Копировать, если не существует в WiX .

...