mmr*_*mmr 18 wix overwrite previous-installation
我有一个应用程序的安装程序,无论版本号如何,都需要安装在任何现有版本上.
相反,我有一个安装程序,经常说我需要去添加/删除程序.对于我的测试人员而言,这是非常令人沮丧的行为,因为它只会让他们放慢速度而没有真正的理由 - 以前的安装程序包总是只安装,删除以前存在的任何文件,所以他们从来不必这么做.我们还有一个(大)客户群经过类似的培训,因为我现在安装的任何版本都应该覆盖我之前可能拥有的任何安装.
从我可以收集的信息来看,似乎WiX范例是做阻止向后版本安装和其他复杂事情的事情,比如修补.坦率地说,我们的客户不够聪明,不知道或不关心修补,合并等等,只想要一个总是有效的安装程序(而且我倾向于同意它们;带宽便宜).那我该怎么做呢?
我试过这个,但它似乎并不重要:
<InstallExecuteSequence>
<RemoveExistingProducts Before="InstallInitialize"/>
</InstallExecuteSequence>
Run Code Online (Sandbox Code Playgroud)
这是WiX的3.0.5120版本.
编辑:根据Rob的建议,我添加了这段代码:
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallInitialize"/>
</InstallExecuteSequence>
<Upgrade Id="27cb76c7-544e-465f-b1f3-b11d9a49e416">
<UpgradeVersion Minimum="0.8.0"
IncludeMinimum="yes"
Maximum="1.5.1"
Property="OLDERVERSIONBEINGUPGRADED" />
</Upgrade>
Run Code Online (Sandbox Code Playgroud)
我没有添加代码以不允许回滚安装; 由于令我非常尴尬的原因,我们只是说版本号的增加并不一定与软件良好性的增加相关.我不希望任何人被锁定在他们认为需要的东西之外.
另外,非常重要的是将产品的默认GUID更改为"*",以便使用不同的安装程序创建不同的GUID,这显然是问题所在.
归档时间: |
|
查看次数: |
17146 次 |
最近记录: |