如何在 WIX 中用蜡烛定义项目变量?
How can I define a project variable with candle in WIX?
我想使用现有的项目变量并扩展它,但我希望它是全局的,这样我就不必将它包含在每个 wxs 文件中。
我要扩展的是:
$(var.MyProject.TargetDir)
我要转制
var.MyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\
我如何全局执行此操作?
我知道我能做到:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define var.MyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\ ?>
但是我必须在每个文件中都这样做,或者我必须创建一个 wxi 文件并将其包含在每个文件中。我希望在构建之前预定义它。我怎样才能做到这一点?
您可以这样使用 Candle 定义预处理器变量:
candle.exe -dMyVariable=whatever.
google 这不是一个很难找到的答案,但我的问题是我试图这样做:
candle.exe -dMyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\
所以我在这里有点粗心,忘记了 $(var.MyProject.TargetDir)
也是由 candle 创建的,我不能在它创建之前就引用它。
您必须手动找到文件的路径:
candle.exe -dMyProject.TargetDir.Help=$(SolutionDir)MyProject\bin$(Configuration)\Help\
另外请注意,您创建的变量没有前缀“var.”
我想使用现有的项目变量并扩展它,但我希望它是全局的,这样我就不必将它包含在每个 wxs 文件中。
我要扩展的是:
$(var.MyProject.TargetDir)
我要转制
var.MyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\
我如何全局执行此操作?
我知道我能做到:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define var.MyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\ ?>
但是我必须在每个文件中都这样做,或者我必须创建一个 wxi 文件并将其包含在每个文件中。我希望在构建之前预定义它。我怎样才能做到这一点?
您可以这样使用 Candle 定义预处理器变量:
candle.exe -dMyVariable=whatever.
google 这不是一个很难找到的答案,但我的问题是我试图这样做:
candle.exe -dMyProject.TargetDir.Help=$(var.MyProject.TargetDir)Help\
所以我在这里有点粗心,忘记了 $(var.MyProject.TargetDir)
也是由 candle 创建的,我不能在它创建之前就引用它。
您必须手动找到文件的路径:
candle.exe -dMyProject.TargetDir.Help=$(SolutionDir)MyProject\bin$(Configuration)\Help\
另外请注意,您创建的变量没有前缀“var.”