通过MSI升级代码检测MSI已安装的功能

时间:2013-09-13 16:09:53

标签: windows-installer installshield

我需要检测计算机上当前安装的MSI软件包的哪些功能,但我只知道MSI升级代码guid。 任何想法如何做到这一点很好的方式?

谢谢, 马雷克

1 个答案:

答案 0 :(得分:1)

如果您只是从同一安装的先前版本迁移功能状态,则可以通过创建升级表来执行此操作 - 填写升级代码和版本范围,然后将属性设置为'771',它将复制在不删除其他安装的情况下完成功能状态。

如果您需要在不相关的应用中执行此操作,可以使用Automation Interface执行此操作 - 使用MsiEnumRelatedProducts调用从升级代码中获取产品代码,然后将该产品代码与MsiEnumFeatures一起使用以获取功能列表,然后使用MsiQueryFeatureState读取功能状态。