Windows installer 未删除旧版本中的组件
我正在编写一个小型MSI软件包的第二个版本,在升级测试期间,我发现旧版本没有作为升级的一部分正确删除 可以使用“添加/删除程序”干净地卸载旧软件包,删除所有已安装的文件。在升级过程中,安装日志显示旧软件包被告知自行删除,但这似乎不会发生,因为属于已移动到另一个目录的组件的文件被搁置 我是否需要从同一软件包的旧版本中显式删除文件,或者这里是否缺少某些内容 InstallExecuteSequence是Windows installer 未删除旧版本中的组件,windows-installer,upgrade,Windows Installer,Upgrade,我正在编写一个小型MSI软件包的第二个版本,在升级测试期间,我发现旧版本没有作为升级的一部分正确删除 可以使用“添加/删除程序”干净地卸载旧软件包,删除所有已安装的文件。在升级过程中,安装日志显示旧软件包被告知自行删除,但这似乎不会发生,因为属于已移动到另一个目录的组件的文件被搁置 我是否需要从同一软件包的旧版本中显式删除文件,或者这里是否缺少某些内容 InstallExecuteSequence是 LaunchConditions 100 ValidateProductI
LaunchConditions 100
ValidateProductID 150
FindRelatedProducts 162
AppSearch 175
CostInitialize 200
FileCost 300
CostFinalize 400
MigrateFeatureStates 450
InstallValidate 500
InstallInitialize 600
ProcessComponents 620
UnpublishFeatures 650
RemoveFiles 700
RemoveFolders 800
CreateFolders 900
MoveFiles 1000
InstallFiles 1100
PublishFeatures 1200
PublishProduct 1300
RegisterProduct 1400
RegisterUser 1500
InstallFinalize 1600
RemoveExistingProducts 1700
更新:删除操作抱怨在InstallFinalize期间无法删除
C:\Config.msi\.
。这可能与某些方面有关吗?如果在InstallFinalize之后计划RemoveExistingProducts,则必须遵守所有组件规则。(请参阅。)“已移动到另一个目录的组件”需要创建一个新组件。这看起来很像我正在寻找的组件。明天早上我会试试。我想前面会有更多的文档阅读——我已经设法将它破坏到一个点,其中一个组件不再被删除,并且日志文件包含二进制垃圾。8-/