如果我构建我的product.msi版本1.0.0并安装它,然后将其重建为product.msi版本1.0.1并升级它,自定义操作将被完美调用。
如果我构建我的product.msi版本1.0.0并将其放入刻录安装程序版本1.2.0并安装它,那么重建product.msi版本1.0.1并将其放入刻录安装程序版本1.2.1并升级它,我的自定义操作无法正确调用。
关于刻录引导程序的一些事情是使自定义操作执行不相同。
以下是我的4个自定义操作。运行引导程序以更新它们时,不会调用最后两个。
<Custom Action='RemoveServiceWithProvidedBatch' After='InstallInitialize'>Installed</Custom>
<Custom Action='WaitForFileLocks' After='InstallInitialize'>Installed</Custom>
<Custom Action='InstallService' Before='InstallFinalize'>NOT REMOVE ~= "ALL"</Custom>
<Custom Action='MergeConfigFiles' Before='InstallFinalize'>NOT REMOVE ~= "ALL"</Custom>