我在 native bootstrap 应用程序的选项对话框中有一个 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。上述方法基于此:Customising the WiX Burn theme with additional inputs
上面提到的链接似乎不适用于 EditBox。为了解决这个问题,我为 MSI 设置了
DisplayInternalUI="yes"
。但是,我仍然不想显示 MSI 对话框,而是使用 EditBox 控件通过 WiX BA 对话框传递属性。随着时间的推移,我将编写一个可以完成这项工作的托管 BA,但我现在需要使用 native BA 来完成这项工作。根据他的链接:http://www.mail-archive.com/[email protected]/msg54024.html 似乎 EditBox 控件实际上可以用于将属性传递给 MSI,但我无法使其正常工作。任何见解将不胜感激。更新:
我编写了一个自定义托管 bootstrap ,它使我们能够解决这个问题。正如 Rob 所提到的,有一个现存的功能请求可以在默认 BA 中实现这一点。
最佳答案
有一个功能请求允许任意编辑框将其数据存储到 Burn 变量中。截至今天,该功能请求尚未实现,尽管有人表示有兴趣实现它。
关于wix - 如何将属性从刻录 native bootstrap 中的 EditBox 控件传递到 MSI,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15305932/