我有一个python脚本,它有一个变量'var',包含一个库文件的路径,wix需要这个文件来创建一个msi。我需要将这个'var'发送到wix proj。我可以通过吗? 我的wix代码看起来有点像..
<Component Id='MainExecutable' Guid='*'>
<File Id='ExecutableFile' Name='mc.exe' DiskId='1' Source='c:\my path to\mc.exe'KeyPath='yes'/>
</Component>
文件ID中的源路径应该来自python脚本中的'var'。
答案 0 :(得分:1)
以下内容适用于WiX v3.6 +
<Component Id='MainExecutable'>
<File Id='ExecutableFile' Source='$(var.VariableNameForPath)\mc.exe' KeyPath='yes'/>
</Component>
要定义变量,请将其传递给命令行,如:
candle -dVariableNameForPath="C:\my path to" my.wxs
或者如果使用MSBuild和.wixproj,请通过DefineConstants
属性传递值,如:
<PropertyGroup>
<DefineConstants>VariableNameForPath=C:\my path to</DefineConstants>
</PropertyGroup>
或者如果您希望C:\my path to
成为MSBuild中的属性,它看起来像:
<PropertyGroup>
<DefineConstants>VariableNameForPath=$(MsbuildPropertyForPath)</DefineConstants>
</PropertyGroup>