【发布时间】:2011-08-17 08:55:24
【问题描述】:
我正在尝试构建 Microsoft 安装程序更新 (MSP),我希望更新安装程序从原始安装中删除文件。
我成功创建了一个新的 msi,在 Orca.exe 中查看时,我可以看到 RemoveFile 表包含正确的条目,但在生成 *.msp 文件并执行后,请求删除的文件仍然存在。 ..
如果有人能提供帮助,将不胜感激。
【问题讨论】:
标签: windows-installer installation orca
我正在尝试构建 Microsoft 安装程序更新 (MSP),我希望更新安装程序从原始安装中删除文件。
我成功创建了一个新的 msi,在 Orca.exe 中查看时,我可以看到 RemoveFile 表包含正确的条目,但在生成 *.msp 文件并执行后,请求删除的文件仍然存在。 ..
如果有人能提供帮助,将不胜感激。
【问题讨论】:
标签: windows-installer installation orca
MSI 组件规则禁止您在小升级或小更新期间删除组件。然而,Phil Wilson 对this question here 的回答为此提供了一个新颖的解决方案:将十进制 64 添加到组件表中要删除的文件的组件“属性”条目中。他引用的标志 msidbComponentAttributesTransitive 记录在组件表文档here 中。
【讨论】:
文件删除与组件安装或卸载相关联。因此,如果补丁未安装您的关联组件,则不会执行删除。
更简单的方法是使用自定义操作:
为它设置这个条件:
补丁
【讨论】: