在我的安装程序项目(WiX)中,我在属性页面的Build选项卡上定义了一个预处理器变量,如下所示:
Version=1.1.0.0
为了论证,让我说我可以很容易地将它定义为变量而不是预处理器变量。
我的目标是:我想在安装程序输出名称中使用此变量:
Me.Common_$(Version)
上面的内容当然不起作用 - 找不到引用的变量,因此实际输出最终为Me.Common_.msi
。有没有办法在这种情况下使用用户定义的变量?
另一个可行的选择是在后期构建事件中重命名MSI文件。但是,我仍然无法在此处访问变量。
ren "!(TargetPath)" "$(TargetName)_$(Version)$(TargetExt)"
这些方法的解决方案对我有用。
答案 0 :(得分:3)
在.wixproj文件中的第一个PropertyGroup节点下查找/添加这些文件:
<Version Condition=" '$(Version)' == ''">1.1.0.0</Version>
<OutputName>My.Common_$(Version)</OutputName>
然后,当你编译时,你可以通过“/ p”开关传递版本,即:
msbuild <your.wifproj> /p:Version=1.1.2.0 /t:rebuild
答案 1 :(得分:0)