There must be something better than this (perhaps Chris Painter shows up - he is the apex build automation guy), but here goes with some pragmatic tweaks:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<InstallerPlatform>x64</InstallerPlatform>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<InstallerPlatform>x64</InstallerPlatform>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
I am not sure if Votive (WiX component in Visual Studio) will preserve this value or if it might get removed as you work.
Hence using candle.exe
and light.exe
manually could be safer - I am not sure. I don't have this particular use-case right now:
"%WIX%bin\candle.exe" product.wxs -arch x64 -ext WixUIExtension >> Build.log
"%WIX%bin\light.exe" -out Test.msi product.wixobj -ext WixUIExtension >> Build.log