4

我在本机引导程序应用程序的选项对话框中有一个 EditBox 控件:

<Editbox Name="MyEditBox" X="221" Y="151" Width="-100" Height="21" TabStop="yes" FontId="3" />

在 bundle.wxs 文件中,我有:

<Variable Name="MyEditBox" bal:Overridable="yes"/>

在要向其传递用户在 EditBox 控件中输入的值的 MSI 元素下,我有:

<MsiProperty Name="FIRE" Value="[MyEditBox]"/>

但是,未设置 MyEditBox,并且 FIRE 作为空字符串传递给 MSI。上述方法基于此:使用附加输入自定义 WiX Burn 主题

似乎上面提到的链接不适用于 EditBoxes。为了解决这个问题,我设置 DisplayInternalUI="yes"了 MSI。但是,我仍然希望不显示 MSI 对话框,而是使用 EditBox 控件通过 WiX BA 对话框传递属性。随着时间的推移,我将编写一个可以完成这项工作的托管 BA,但我现在需要使用本机 BA 来完成这项工作。根据他的链接: http: //www.mail-archive.com/wix-users@lists.sourceforge.net/msg54024.html似乎 EditBox 控件实际上可以用于将属性传递给 MSI,但我没有无法让它发挥作用。任何见解将不胜感激。

更新: 我编写了一个自定义托管引导程序,它使我们能够解决这个问题。正如 Rob 所提到的,在默认 BA 中存在一个现有的功能请求来实现这一点。

4

1 回答 1

1

有一个功能请求允许任意编辑框将其数据存储到刻录变量中。截至今天,该功能请求尚未实现,尽管有人表示有兴趣实现它。

于 2013-03-09T05:07:26.987 回答