[wix-users] Unable to correctly specify a variable for WiX within Visual Studio
Hoover, Jacob
Jacob.Hoover at greenheck.com
Tue Mar 8 12:48:19 PST 2016
<PropertyGroup>
<JavaDocBase>c:\javadocs</JavaDocBase>
<DefineConstants>
$(DefineConstants);
VersionMajorMinor=$(VersionMajorMinor);
VersionBuild=$(VersionBuild);
VersionQFE=$(VersionQFE);
BundleUpgradeCode=$(BundleUpgradeCode);
JavaDocBase=$(JavaDocBase);
</DefineConstants>
</PropertyGroup>
Should work if you are referring to them in your WXS via
<Bundle Version="$(var.VersionMajorMinor).$(var.VersionBuild).$(var.VersionQFE)"
UpgradeCode="$(var.BundleUpgradeCode)"
...
If you have a PreBuild event, use the MSBuild property instead of the var syntax.
<PreBuildEvent>"$(WIX)bin\heat.exe" dir "$(JavaDocBase)" -cg JavaDocs_JSP -gg -scom -sreg -sfrag -srd -dr INSTALLDIR -var var.JavaDocBase -out "$(ProjectDir)\JavaDocs_JSP_Fragment.wxs"</PreBuildEvent>
I am a bit confused why you opted not to use the HeatDirectoryTask.
-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Jon Earle
Sent: Tuesday, March 08, 2016 1:15 PM
To: wix-users at lists.wixtoolset.org
Subject: [wix-users] Unable to correctly specify a variable for WiX within Visual Studio
Setup is Wix 3.10.2 and visual studio 2015. Working with a wix setup project and custom action project.
I want to create a fragment containing the javados for my project. I had read (http://weblogs.sqlteam.com/mladenp/archive/2010/02/11/WiX-3-Tutorial-SolutionProject-structure-and-Dev-resources.aspx) to set a pre-processor variable (or system variable). I opted to include the variable definition in the project. I tried the pre-processor var <DefineConstants>JavaDocBase=c:\javadocs</DefineConstants>
and just setting a normal variable:
<WixVariables>JavaDocBase=c:\javadocs</WixVariables>
Neither ended up working.
Pre-Build event:
<PropertyGroup><PreBuildEvent>"$(WIX)bin\heat.exe" dir "$(var.JavaDocBase)" -cg JavaDocs_JSP -gg -scom -sreg -sfrag -srd -dr INSTALLDIR -var var.JavaDocBase -out "$(ProjectDir)\JavaDocs_JSP_Fragment.wxs"</PreBuildEvent></PropertyGroup>
I always seem to receive the error:
Unhandled Exception:The expression """.JavaDocBase" cannot be evaluated. Method 'System.String.JavaDocBase' not found.
I have tried var.JavaDocBase, wix.JavaDocBase, env.JavaDocBase and Just JavaDocBase... while the last will allow the command to run, it doesn't put in the proper path so I am no further ahead.
Is it possible to replicate what is in that previously linked tutorial and if so, what have I done wrong?
____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/
More information about the wix-users
mailing list