Inno Setup中Visual Studio安装程序升级代码的等价物是什么?我发现这篇文章How do I uninstall related products in Inno Setup using an InstallShield Upgrade Code GUID使用升级代码搜索产品。 AppId与UpgradeCode相同吗?我是Inno设置的新手,有人可以帮助我吗?
答案 0 :(得分:4)
通常,在安装升级时,不要卸载旧版本的应用程序。
AppId
有点相关;给定两个具有相同ID的安装程序(或更常见的两个版本的相同安装程序),默认情况下,Inno将提供安装到与上一次安装相同的文件夹中,并且两者将共享卸载信息。
通常,在发布同一应用程序的升级版本时,您需要做的就是确保AppId
(如果您未指定ID,则为AppName
)与在旧版本中,一切都会正常工作。
强烈建议的一件事(即使是第一个版本)是将以下内容添加到[Setup]
部分:
DisableDirPage=auto
DisableProgramGroupPage=auto
这将允许用户选择首次安装时的安装位置,但在后续安装/升级时隐藏选择。由于Inno默认使用以前的位置,因此可以避免因安装位置从一个安装更改为下一个安装而导致的任何混淆(以及剩余文件)。
除此之外,几乎没有必要做任何其他事情。在极少数情况下,您可能会使先前版本中使用的特定文件变为冗余(例如,不再使用特定库);如果您希望通过使用[InstallDelete]
条目删除不再需要的先前版本的任何文件来处理此问题。 (始终确保您只按名称删除特定文件 - 使用通配符是非常危险的。)但是,留下冗余文件通常没有太大的危害(除非它们很大) - 如果它们仍然很大,它们最终会被清理干净用户卸载。
如果您想进一步自定义行为,可以在[Code]
中执行各种操作。