如何使用wix托管引导程序ui获取正在安装的功能的名称

时间:2016-03-29 10:54:54

标签: installation wix windows-installer bootstrapper burn

我正在使用WiX安装可执行文件,我使用ManagedBootstrapperApplicationHost进行CustomUI。

是否可以在安装时获取正在安装的功能的名称?

如果可能,那么我们如何才能获得该功能的名称?

任何帮助都将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:1)

功能不是一个接一个地安装。例如,如果要安装3个功能,每个功能包含10个文件,则InstallFiles操作将同时安装所有30个文件。注册表项也一样。因此,您无法显示一个说明"安装Feature1"然后在"安装Feature2"因为那并没有发生。您可以知道的是,正在安装一些功能列表。

您的评论询问是否找到功能是否成功安装。这个问题永远不会出现 - 从来没有安装过的功能和其他失败的功能。 MSI安装是一个事务,它可以全部工作或失败并回滚并删除它所做的更改,以便系统恢复到以前的状态。

不清楚为什么功能列表显示如此重要。如果您使用MSI的内部UI,则会有一个功能选择对话框,用户可在其中选择要安装的功能;如果你使用Burn UI同样的东西是可用的,那么用户可以看到已经选择了哪些功能。

在MSI中,正在安装的功能列表(在它们被选中之后)位于ADDLOCAL属性中,但这是内部名称。它可以用于显示最后安装的功能列表,但是根据定义再次安装了所选的功能,否则安装将完全回滚。我不相信我曾经见过安装MSI功能列表的安装结尾 - 它是多余的信息。了解您拥有的方案或您尝试解决的问题会很有用,如果您认为需要显示列表,因为有些可能会安装而其他人可能会失败,那么就没有意义了,因为我讲过了。