Установщик не обновляется (возможно, из-за файлового кэша Windows 7)

Я создаю установщик для моего приложения 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 ответ

Решение

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

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

Другие вопросы по тегам