我有一个现有的WIX安装程序文件,我试图弄清楚。在这个文件中我看到定义了两个自定义操作:从远程位置WIX升级方案
<Custom Action="CreateBackup" Before="InstallInitialize">
<![CDATA[Installed]]>
</Custom>
<Custom Action="RestoreBackup" After= "InstallFinalize">
<![CDATA[NOT Installed]]>
</Custom>
的CreateBackup功能拷贝一些文件(不直接相关的安装程序)。恢复将这些文件放回到相同的位置。
现在在升级场景中,我看到以下日志记录顺序。我已经把的 “安装” 表面价值括号:
- CreateBackup被跳过(安装==假)
- InstallInit
- CreateBackup成功(安装==真)
- InstallInit
- InstallFinalize
- RestoreBackup被跳过(安装== true)
- InstallFinalize
- RestoreBackup成功(安装==假)
我有一个关于这几个问题:
- 据我所知,有一个卸载和安装在该脚本中去。根据“已安装”的价值,我得出结论:安装是先完成的。它是否正确?
- 我看到InstallInit在第一次InstallFinalize之前调用两次。这是什么意思?卸载开始时安装仍然很忙?
- Installed的第一个值是false,所以我猜它是相对于新版本的?但是卸载完成后又如何变成虚假?那么它是否与旧版本相关?
我正在使用一个MajorUpgrade元素。
希望有人能清楚这一点。
这的确是一个majorupgrade元素。我不知道这是相关的:)。我实际上并没有试图解决某些问题,我想了解当前实现的流程。在升级过程中,“已安装”属性如何更改?备份和还原的作用是从磁盘上的远程位置(不直接与此安装程序相关)中保存一些文件。恢复将这些文件放回。我已经更新了我的问题,使其更清晰一些。 – Frank