如何在Wix中读取运行时宏

时间:2013-10-07 13:39:39

标签: wix

我只想在创建安装程序文件后从文件中读取名称或从命令行读取。

我在MainProject.wxs文件中定义了一个宏

< ?define product =“xyz”?>

我正在阅读Macro“产品”,如下所示,

<注册表操作=“写”

              Id="RegistryEntryId"
              Name="InstallDir"
              Key="Software\$(var.product)\MyOwnName"
              Root="HKLM"
              Type="string"
              Value="[INSTALLPATH]"
              KeyPath="yes"/>

关于构建时间。

但我想在创建安装程序后在运行时定义和读取此“产品”,以便我可以根据运行时的文件内容更改产品名称,任何建议都会有所帮助。

先谢谢。

1 个答案:

答案 0 :(得分:2)

宏由预处理器处理。您请求的是可在运行时更改的变量。您需要使用property

<Property Id="PROJECTNAME">xyz</Property>

可以在运行时更改此属性。

你读这样的财产:

[PROJECTNAME]

有不同的方法来改变财产。您可以在自定义操作中执行此操作。