Автоматически создавать новую запись в "Программы и компоненты" для каждой новой версии

Я хочу сохранить старую запись на экране "Программы и компоненты", если старая версия приложения еще присутствует, и переопределить запись, только если была установлена ​​та же версия (и удалить старый экземпляр в этом случае). Это должно позволить нам сохранить несколько версий нашего приложения, если версии разные.

Я предполагаю, что могу сделать это, изменив GUID.

  • Это правильный способ сделать это?
  • А можно ли как-то автоматизировать процесс и автоматически зависеть от генерации GUID от версии приложения?

Мы используем сценарий сборки для автоматизации запуска Inno Setup, и он обычно не редактируется до выпуска новой версии, сценарий сборки используется для управления новыми версиями.

1 ответ

Решение

Чтобы сохранить разные версии одного и того же приложения в разделе "Программы и компоненты", необходимо назначить другое значение AppId Директива для каждой версии.

По умолчанию AppId равно AppName,

Если вы хотите сделать значение уникальным для каждой версии, включите AppVersion к стоимости. Вы можете использовать функцию препроцессора SetupSetting для этого:

[Setup]
AppName=My Program
AppVersion=1.5
AppId={#SetupSetting("AppName")}_{#SetupSetting("AppVersion")}

Чтобы вышесказанное работало, AppId должен быть ниже AppName а также AppVersion,

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