Во время удаления обновленный продукт ссылается на старый файл MSI сборки для удаления
Я использую InstallShield X - Professional Edition, версия 10.0
Я создал.exe файл через installshield Basic MSI project и установил его. Во время установки он извлекает MSI-файл по адресу: C:\Windows\Downloaded Installations{FF12DD....}*. Msi
После этого я создал другой продукт с обновленной версией и установил его поверх старого продукта. Последний продукт успешно установлен. После обновления, когда я пытаюсь удалить его, обновленный продукт использует MSI-файл более старой сборки. То, что я хочу здесь, это использовать последнюю версию файла.msi. Потому что я сделал некоторые изменения в installScript последнего продукта, которые должны выполняться во время деинсталляции.
В обновленном продукте я просто обновляю номер версии продукта, а не код продукта. Я не хочу изменять код продукта.
Спасибо,
Самер К
1 ответ
Вам необходимо ознакомиться с основными обновлениями и, возможно, с некоторыми основами установщика Windows. По сути, я думаю, что вы должны попытаться осуществить серьезное обновление, оно включает в себя изменение кода продукта.
Не бойтесь менять код товара. Это код обновления, который идентифицирует связанные версии продукта. Код продукта меняется между версиями. По сути, вы создаете таблицу обновлений для обнаружения других версий вашего продукта, вы обновляете номер версии MSI(первые три цифры), и код пакета всегда должен изменяться при каждой перестройке MSI. Наконец, вы должны сохранять код обновления одинаковым для всех выпусков, чтобы облегчить внедрение основных обновлений.
Installshield скрывает большую сложность этого, если вы создаете информацию, найденную в представлении Upgrades. Прочитайте информацию, представленную здесь, и вы сможете продолжить.
Некоторая дополнительная информация об этих важных кодах в MSI. Вы должны понимать это, даже если вы используете упрощенный графический интерфейс Installshield:
При каждой перестройке MSI вы ДОЛЖНЫ изменять код пакета. Этот код никогда не должен был быть представлен во всем проекте MSI - он используется для уникальной идентификации файла. Если вы сохраните этот guid одинаковым для нескольких файлов, каждый файл будет определяться как один и тот же файл по определению, даже если это разные файлы. Это может вызвать самые загадочные проблемы, с которыми вы когда-либо сталкивались в MSI. Использование одного и того же кода пакета несколько раз неправильно во всех случаях - если только вы не хотите взломать:-).
- Код пакета: идентифицирует уникальный файл MSI
- Код продукта: определяет версию продукта
- Код обновления: определяет семейство продуктов