Wednesday 8 July 2015

WiX Project Reference Variables

Once a project reference is added, a list of project variables becomes avaliable to be referenced in the WiX source code. Project reference variables are useful when you do not want to have hard-coded values. For example, the $(var.MyProject.ProjectName) variable will query the correct project name at build time even if I change the name of the referenced project after the reference is added.
The following demonstrates how to use project reference variables in WiX source code:

Variable name Example usage Example value
var.ProjectName.Configuration $(var.MyProject.Configuration) Debug or Release
var.ProjectName.FullConfiguration $(var.MyProject.FullConfiguration) Debug|AnyCPU
var.ProjectName.Platform $(var.MyProject.Platform) AnyCPU, Win32, x64 or ia64
var.ProjectName.ProjectDir $(var.MyProject.ProjectDir) C:\users\myusername\Documents\Visual Studio 2010\Projects\MyProject\
var.ProjectName.ProjectExt $(var.MyProject.ProjectExt) .csproj
var.ProjectName.ProjectFileName $(var.MyProject.ProjectFileName) MyProject.csproj
var.ProjectName.ProjectName $(var.MyProject.ProjectName) MyProject
var.ProjectName.ProjectPath $(var.MyProject.ProjectPath) C:\users\myusername\Documents\Visual Studio 2010\Projects\MyProject\MyApp.csproj
var.ProjectName.TargetDir $(var.MyProject.TargetDir) C:\users\myusername\Documents\Visual Studio 2010\Projects\MyProject\bin\Debug\
var.ProjectName.TargetExt $(var.MyProject.TargetExt) .exe
var.ProjectName.TargetFileName $(var.MyProject.TargetFileName) MyProject.exe
var.ProjectName.TargetName $(var.MyProject.TargetName) MyProject
var.ProjectName.TargetPath $(var.MyProject.TargetPath) C:\users\myusername\Documents\Visual Studio 2010\Projects\MyProject\bin\Debug\MyProject.exe
var.ProjectName.Culture.TargetPath $(var.MyProject.en-US.TargetPath) C:\users\myusername\Documents\Visual Studio 2010\Projects\MyProject\bin\Debug\en-US\MyProject.msm
var.SolutionDir $(var.SolutionDir) C:\users\myusername\Documents\Visual Studio 2010\Projects\MySolution\
var.SolutionExt $(var.SolutionExt) .sln
var.SolutionFileName $(var.SolutionFileName) MySolution.sln
var.SolutionName $(var.SolutionName) MySolution
var.SolutionPath $(var.SolutionPath) C:\users\myusername\Documents\Visual Studio 2010\Projects\MySolution\MySolution.sln

No comments:

Post a Comment