如何从控制面板 (WIX) 卸载应用程序?

How do I uninstall an app from control panel (WIX)?

我有一个复杂的安装程序 (Wix),它分为多个部分。一部分通过 EXE 文件而不是 MSI 文件安装一些相机驱动程序(32 位或 64 位,具体取决于所需内容)。安装我的应用程序后,使用 Wix,相机 drivers/executable 出现在我的控制面板的程序和功能中。在升级我的应用程序之前,我必须卸载相机驱动程序(然后安装最新版本)。相机安装目录下没有卸载EXE/MSI。我可以弄清楚如何检查是否安装了摄像头(虽然我还没有安装),但是如何手动卸载摄像头 w/o 到控制面板。 如何自动执行此过程?

注意:我在网上彻底寻找解决方案,虽然有很多线程接近,但实际上没有任何答案回答这个问题。

注:经过多方搜索,我运行跨WMIC(http://www.tech-recipes.com/rx/2947/windows_uninstall_application_command_line/)。我可以通过 WMIC 实现自动化吗?更糟的是,我的相机没有出现在 WMIC 列表中,但它在控制面板中。

提前致谢!

-丹

如果命令出现在 Add/Remove 程序小程序中,则该信息在 Uninstall Registry keys 中可用。通过枚举此注册表项中的条目,您应该能够确定执行相关组件卸载所需的信息。通常,UninstallString 会提供正确的调用语法来卸载组件,而无需任何用户交互。

一些应用程序有特定的行为,您可以在注册表中同时拥有 ModifyPathUninstallString 选项。 ModifyPath 选项用于 check/reinstall/fix/add-remove 项目选项,而 UninstallString 应该执行卸载,希望不需要用户交互。

对于有问题的应用程序,它需要程序名称和 /uninstall 参数才能在这种情况下将其卸载,而无需按任何选项。

一些卸载程序采用 /q/quiet 选项,无需任何用户交互即可执行卸载 - 这完全取决于相关应用程序。