Вопрос

Я создал установщик "test.msi". Это версия-1. test.msi содержит 2 компонента "comp1", "comp2" comp1 содержит 2 файла "comp1_file1", "comp1_file2"

В версии 2 test.msi, -> новый компонент добавлен "comp3". Он содержит 1 файл «comp3_file1» -> «Comp1» обновляется. «comp1_file2» файл удален и новый файл «comp1_file3» добавлено теперь. Он содержит 2 файла (comp1_file1, comp1_file3)

Если я обновите test.msi с версии-1 до версии-2, используя "msiexec /i test.msi reenstall = all RevestallMode = vamus", в папке установки все еще я вижу файл версии 1 "comp1_file2".

Если я понижено от версии-2 до версии-1, используя "msiexec /i test.msi Revestall = All RevestallMode = Vamus", в установленных папках существуют файлы, связанные с версией 2 (comp3_file1, comp1_file3).

Как удалить старые записи (компоненты/файлы) во время переустановки?

Я использую Premier Edition InstallShield 2008.

Это было полезно?

Решение

Переходные компоненты - это путь. MS описывает их здесь: http://msdn.microsoft.com/en-us/library/aa372462%28v=vs.85%29.aspx

Чтобы следить за тем, что сказал Крис, игра с RevessallMode может сделать некоторые неприятные вещи. Это особенно верно, если вы включаете какие -либо общие компоненты. Вы можете использовать компоненты Backlevel, от которых зависят другие приложения, и вам может быть предложено остановить, казалось бы, не связанные приложения на основе файлов в используемых общих компонентах. Это действительно хорошая вещь, чтобы избежать, если вы можете.

Другие советы

Как предложил Космин, вы не можете удалить компоненты во время ремонта, но Вы можете удалить предыдущие версии перед началом процесса установки для новой версии.

Один из способов перейти с InstallShiled 2008 - создать крупное обновление, которое сделает это.Видеоурок.

Редактировать

Как сказал Кристофер: есть способы удалить компоненты в незначительных обновлениях / ремонте. Комментарий ниже.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top