2015-02-06 48 views
0

我有两个共享msi的应用程序。让我们称他们为A和B.我首先安装了A。然后,当我安装B [具有更高版本的共享msi]时,会发生较小的升级。现在我卸载A.共享的msi组件仍然存在,它不会被卸载[这是预期的行为]。然后我卸载B.现在,共享msi的内容仍保留在程序文件文件夹中。在未安装日志中,据说该产品已成功删除。但共享msi的组件仍然存在。 如何在卸载这两个产品时卸载共享的msi组件?无法在进行小升级后卸载组件

+0

检查这些特定的文件,看看你是否标记为* Permanent *?将文件标记为永久文件不会在卸载过程中删除该文件。 – Kurubaran 2015-02-06 10:24:07

回答

0

您的描述令人困惑的原因有几个。应用程序不共享MSI,不知道这意味着什么。目前还不清楚你是否进行了小幅升级。如果您增加MSI版本,增加这些文件的升级文件版本,使用与原始版本相同的ProductCode,请使用包含REINSTALL = ALL REINSTALLMODE = vomus的命令行进行安装,并且确保旧MSI文件和新MSI文件中的组件ID对于相同的项目(文件,注册表数据)是相同的。如果你没有做这些事情,你可能只是有另一个MSI偶尔会以一种偶然的方式在已安装的产品上安装一些文件。在这些情况下卸载可能会导致不可预知的结果。另外,如果文件被明确标记为永久或共享的遗留文件,并且您的问题没有使用您使用的工具进行标记,则文件将保留在后面,因此我无法说出这些将在您的情况下被调用的内容。简单的答案是有很多方法可以解决您遇到的问题,但没有足够的信息来说明问题可能出在哪里。