我们的应用程序中有很多文件。每个文件都放在一个组件中。对于不同版本的软件,这些组件/文件的GUID是否需要不同?现在我们总是为每个版本创建新的GUID ......
所以在1.0版本中:
<Component Id="cmpDE86F5F2ECC747CD5DBEEE393DF6F171" Guid="{0EFFF658-728F-48ED-9363-CCFBA2907361}">
<File Id="fil21B022DF64AB20896A8D0D6D0A986920" KeyPath="yes" Source="$(var.SourceDir)\Ionic.Zip.xml" />
</Component>
在版本1.1中:
<Component Id="cmpDE86F5F2ECC747CD5DBEEE393DF6F171" Guid="{06CBD6F8-2DD5-473C-9E72-4D432C82EDD9}">
<File Id="fil21B022DF64AB20896A8D0D6D0A986920" KeyPath="yes" Source="$(var.SourceDir)\Ionic.Zip.xml" />
</Component>
这是必需的,还是GUID在版本上保持不变(即使目标文件发生了变化)?
答案 0 :(得分:2)
是的,即使目标文件发生更改,GUIDS也可以保持不变。这就是我通常做的事情。事实上,你总是生成新的东西似乎很奇怪。
至于现在,我可以想到一个可能很重要的场景:
想象一下你创建了一个次要的升级(它正在进行REINSTALL),如果你每次都改变GUIDS,它就不会做很多跟踪。如果您随后更改目标文件和GUID,则系统上将包含旧文件(与以前的文件一样)。但是,如果您不更改GUID,安装程序将能够看到先前的COMPONENTS文件已更改,并执行必要的移动。