将MSBuild变量传递给Votive中的链接器

时间:2011-11-11 00:23:14

标签: wix wix3.5 votive

我正在尝试动态命名我的WiX安装程序项目的输出,以便生成的MSI是MyProject-Version-Configuration.msi(例如MyProject-1.2.0.1325-Debug)。由于输出文件的名称是由链接器(light.exe)设置的,我认为我会在WiX项目的工具设置中使用附加参数:

-out $(TargetDir)MyProject-$(Version)-$(Configuration)$(TargetExt)

不幸的是,$(TargetDir)和$(TargetExt)在项目运行时没有被评估,因此光接收:

-out MyProject-1.2.0.1325-Debug

显然不会产生正确的输出。鉴于$(Configuration)设置正确,我想知道为什么$(TargetDir)$(TargetExt)不是?

我可以通过使用post-build事件重命名输出文件来解决此问题,然后我可以访问$(TargetDir)$(TargetExt)属性,但我想知道为什么链接器没有收到正确的命令。

1 个答案:

答案 0 :(得分:0)

您需要编辑.wixproj文件并在Visual Studio外部进行此更改。据我所知,Votive错误地逃脱了一些角色(AFAIR用$替换$)。