软件GUID是否应与程序集GUID不同?

时间:2014-11-06 13:31:37

标签: c# windows installation inno-setup guid

我们正在开发一个项目,我们将其部署为使用Inno Setup创建的安装可执行文件。

现在,我们必须为主程序集(由VS2013创建)和软件(用于识别已安装软件的afaik)指定GUID。这两个GUID应该不同还是应该相同?起初,我认为我们实际上应该使用相同的GUID两次因为它们引用相同的产品,但是,有人可能会说这是两个不同的实例,即软件和程序集。

这些GUID的选择有什么影响?哪种方法更可取?如果我们两次使用相同的GUID,会不会有任何冲突?

编辑:我指的是InnoSetup AppId属性,默认设置为生成的GUID。这是GUID窗口用于识别软件吗?

1 个答案:

答案 0 :(得分:1)

AppId指令用于唯一标识系统中的Inno Setup安装。没有更多或更少。如果您释放具有相同AppId指令值的另一个安装程序,则将在安装旧版本的系统上将其视为对上一个安装程序的升级(例如,新版本执行的操作将附加到现有卸载日志文件)。

根据经验,如果您要发布的新安装程序是旧安装程序的升级版,请使用与旧版安装程序相同的AppId。否则改变它。

此外,AppId值不必是GUID,但由于其唯一性,使用GUID是一种常见做法。