在制作MSI安装文件的时候,有两个码值得注意,在产品升级过程中使用非常重要。遵守规范的版本发布方式,可以实现自动的先删除旧版本,再安装新版本等功能,方便我们的产品升级。每个MSI安装包都有三个Code,Package Code, Product Code, Upgrade Code.
Package Code
Package Code用于唯一标识每一个安装包。
Product Code
Product Code用于标识一系列升级的版本。Windows的程序一般采用0.0.0.0,4位数形式的版本号,其中前三位用来标识版本。Product Code在所有的patch version中必须保持一样,patch version,就是指前两位版本号不变,只有第3位和第4位版本号变化时,发布的版本。同样如果我们的产品前两位的版本号发生了变化,则必须更改一个新的Product Code。
Upgrade Code
Upgrade Code用来标识一条完整的产品线,比如,VS2008, VS2012.两个版本之间使用两个不同的Upgrade Code,互不影响,每个版本中又使用不同的Product Code来实现各自的upgrade。