我正在使用Wix 3.10构建MSI安装程序。安装后,用户可以执行三个操作 - 更改,修复和卸载。安装程序包含多个功能。存在这样的情况:在一个(或多个)特征中存在变化并且存在其他特征(没有变化)。用户希望使用“整个功能将不可用”行通过功能树删除其中一个未触摸的功能,并保留修改后的功能。默认情况下,将为所有功能安装“将安装在本地硬盘驱动器上”行,安装程序会修复已更改的功能。如何在安装后运行时默认情况下安装程序没有修复功能。只有当用户选择修复功能时,安装程序才会修复所需的功能。
任何帮助都会得到满足,
谢谢!
答案 0 :(得分:0)
您提及的功能没有更改和修改后的功能。如果这意味着已安装的产品已更改或删除了文件或注册表项,那么阻止它们被修复的方法是给它们一个null ComponentId并自己管理它们。正如它在这里所说:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa368007(v=vs.85).aspx
来自该对话框的修复会修复整个产品。
然而,应用程序和安装也需要更好的集成,以便不安装然后删除资源,从而导致以多种方式进行修复的可能性。