1

Я создаю установщик для моего приложения Visual FoxPro с помощью ISTool и не устанавливаю. Впервые для меня это нормально. Но я обновил свой код и заново собрал файл EXE. Затем снова скомпилировал установщик. Я обнаружил, что мое обновление не было скомпилировано в установщик, и я не увидел его в своем работающем приложении.

Я заметил, что файл EXE, созданный VFP, был обновлен правильно. Кажется, установочный скрипт не вывел обновленный файл. Но когда я изменил имена папок, это сработало. Я не хочу менять имена папок при запуске этого сценария установки. На самом деле это не очень хорошая идея.
Я думаю, что это из-за системы кэширования Windows 7. Мой Windows 7 Home Premium с пакетом обновления 1.

Например,
Мой предыдущий выходной файл находится в C:\path\to\myinstaller.exe
Когда я компилирую скрипт установки, выходной файл должен быть перезаписан, но это не так, как ожидалось. Хотя я удалил файл, он не работал.
Когда я изменил путь к файлу вывода как C:\newpath\to\myinstaller.exe, я получил исправление, но это не решение, которое я ищу.

Кто-нибудь, как это сделать?

[Редактировать]
Я обнаружил, что установленный каталог не был обновлен должным образом.
Например, я установил программу в C:\Program files\MyInstalledApp
При повторном запуске установщика этот установочный каталог должен быть перезаписан, но произошел сбой.
Таким образом, я получил возможность удалить приложение, прежде чем переустановить его.

Есть ли какое-то решение для этого?

1 ответ1

0

Я думаю, что установщик должен обнаружить предыдущую установку перед установкой, удалить предыдущую установку, если она существует, но оставить конфигурационный файл / файл данных на основании выбора пользователя. Ниже приводится ссылка для этого:

https://stackoverflow.com/questions/2000296/innosetup-how-to-automatically-uninstall-previous-installed-version

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .