Good day
I am a student developer and I have built several installers for the company I am working with now. So I am fairly familure with WIX. We recently decided to have a Build server that auto builds our solution. It builds both debug, and release, aswell as Obfuscated(and non obfuscated) projects. And you really don't have to understand any of this. All you have to understand is that I have the same Wix project building different MSIs dynamicaly. So the way we build them is we call MSBuild.exe with several parameters. Parameters the wix project depends on.
so lets say we go into command prompt and write C:>\windows\Microsoft.NET\Framework\v3.5\MSBuild.exe MyApp.Install\MyApp.Install.wixproj /p:Configuration=Release /p:SpecialPath=Obfuscated /t:Build
The idea is that wix sees the "SpecialPath" parameter being assigned "Obfuscated"; and in then the installer paths its source to ..\myApp\bin\$(var.SpecialPath)\myApp.exe which translates to ..\myApp\bin\Obfuscated\myApp.exe when built.
So my question is how do you create those custom build parameters and have them passed to my .wxs file. As of now with ^this^ setup, $(var.SpecialPath) is not defined and the build CrashSplosions.
For obvious legal reasons I had to cut 90% of the project.wxs file out and rename some stuff, but for all intensive purposes this is what I have.
<Directory Id="TARGETDIR" Name="SourceDir" >
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="myApp">
<Component Id="myAppEXE" Guid="FD5EBC02-MY29-GUID-ACCA-61324C5F1B68">
<RegistryKey Root="HKLM" Key="Software\MyApp">
<RegistryValue Value="0" Type="string" KeyPath="yes"/>
</RegistryKey>
<File Id="MYAPPEXE" Name='myApp.exe' Source="..\myApp\bin\$(var.SpecialPath)\myApp.exe" />
</Component>
<Component Id="EngineDLL" Guid="*">
<File Id="ENGINEDLL" Name='Engine.dll' Source="..\myApp\bin\$(var.Configuration)\Engine.dll" />
</Component>
<Component Id="CommonDLL" Guid="*">
<File Id="COMMONDLL" Name='Common.dll' Source="..\myApp\bin\$(var.Configuration)\Common.dll" />
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id="ProductFeature" Title="myApp" Description='All' Display='expand' Level="1" ConfigurableDirectory='INSTALLLOCATION'>
<ComponentRef Id="myAppEXE" />
<ComponentRef Id="EngineDLL" />
<ComponentRef Id="CommonDLL" />
</Feature>