使用 msiexec 卸载特定功能
Posted
技术标签:
【中文标题】使用 msiexec 卸载特定功能【英文标题】:Uninstalling a particular feature using msiexec 【发布时间】:2012-05-02 12:39:18 【问题描述】:我安装了一个具有两个功能(FirstFeature 和 SecondFeature)的测试应用程序。我只想从应用程序中删除一项功能(SecondFeature)。我尝试在命令行中使用 REMOVE 属性。这是用于删除 SecondFeature 的命令。
msiexec /x RemoveFeatures.msi REMOVE="SecondFeature" /L*V log.LOG
但它正在卸载整个应用程序。日志文件显示默认添加 REMOVE=ALL。这是日志文件的详细信息。
MSI (s) (24:B4) [17:39:05:231]:命令行:REMOVE=SecondFeature REMOVE=ALL
MSI (s) (24:B4) [17:39:05:231]:属性更改:添加 REMOVE 属性。它的值为“SecondFeature”。
MSI (s) (24:B4) [17:39:05:231]:属性更改:正在修改 REMOVE 属性。它的当前值为“SecondFeature”。它的新值:'ALL'。
表示在卸载过程中 REMOVE 属性值被覆盖。我是否需要设置任何其他属性来删除特定功能?
感谢任何帮助。提前谢谢!!!
【问题讨论】:
【参考方案1】:如您所述,/x 用于卸载。 完成(全部)卸载。
尽管您想要执行删除某个功能的安装可能会违反直觉。
msiexec /i RemoveFeatures.msi REMOVE="SecondFeature" /L*V log.LOG
您可能还希望添加 /qb 或 /qn 以使其非交互/静默。
【讨论】:
RemovesFeatures.msi
是一个非常有代表性的包名吗?这让我很困惑。这里使用的是哪个 MSI 软件包?包含该功能的那个,还是其他的?
我只是使用了原始海报使用的MSI名称。如果对您有帮助,请将 SomeProduct.msi 放在那里。以上是关于使用 msiexec 卸载特定功能的主要内容,如果未能解决你的问题,请参考以下文章