【问题标题】:WIX property from a Custom Action into a WIX variable从自定义操作到 WIX 变量的 WIX 属性
【发布时间】:2012-08-21 09:59:00
【问题描述】:

可能看起来像一个微不足道的问题,但我无法让它发挥作用。

问题:您可以将自定义操作中的 WIX 属性设置为 WIX 变量吗?

这是我尝试过的:

<?define VAR = "ProductName"?>

<Product Id="*" Name="$(var.VAR)" Language="1033" Version="1.0.0.0" UpgradeCode="$(var.UpgradeCode)">

<Property Id="VAR">ProductName</Property>

<CustomAction Id='GetProductName' BinaryKey='GetProductName' DllEntry='GetProductName' Execute='immediate' Return='check' />
<CustomAction Id="CustomAction1" Return="check" Execute="immediate" Property="VAR" Value="[PRODUCTNAME]" />


<InstallUISequence>
  <Custom Action='GetProductName' After='AppSearch' />
  <Custom Action='CustomAction1' After='GetProductName' />
</InstallUISequence>

PRODUCTNAME 是我通过自定义操作设置的属性。

谢谢

【问题讨论】:

    标签: variables wix custom-action


    【解决方案1】:

    WiX 变量是构建/编译概念,而不是安装时概念。这是不可能的。

    你真正想做什么?如果您在安装期间尝试更改 ProductName 属性,请注意您不能。一旦安装开始,该属性就不会改变。

    【讨论】:

    • 有什么办法可以解决这个问题,这是我必须满足的要求之一。如果不是 WIX 将不得不报废..:(
    • 我已经开发了一个解决方法,如果我重新创建对话框,那么我可以将它们的标题设置为属性..:) 感谢您的帮助
    • 是的,您可以在对话框标题中使用任何格式化的表达式。只是 ProductName 本身是不可变的。
    • 接受了您的回答,并帮助我更多地理解变量。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多