Sorry. I accidently responded to myself... Yes I did try it. But it did not work.
Originally I was trying to go this way. But apparently msbuild has a problem with the wix "property=value" construct as described in this link. http://stackoverflow.com/questions/506687/defining-multiple-values-in-de fineconstants-in-msbuild-element That is why I am now looking DefineConstants in the wixproj -----Original Message----- From: Alex Ivanoff [mailto:alex.ivan...@shavlik.com] Sent: Wednesday, May 19, 2010 10:17 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] sharing strings among components Forgot to say that this needs to be in BeforeBuild target. -----Original Message----- From: Alex Ivanoff Sent: Wednesday, May 19, 2010 11:12 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] sharing strings among components Did you try my suggestion? <CreateProperty Value="WiXProductName=BeamGage Professional;WiXProductVersion=$(WiXVersion);$(DefineConstants)"> <Output TaskParameter="Value" PropertyName="DefineConstants" /> </CreateProperty> -----Original Message----- From: Kurt Jensen [mailto:kurt.jen...@ophir-spiricon.com] Sent: Wednesday, May 19, 2010 09:44 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] sharing strings among components Since using DefineConstants in msbuild appears to be a dead end, maybe someone can suggest another approach. Our VS2008 solution can be built for three different products - Standard, Professional, and Enterprise - depending on a compiler constant sent to each csproj and wixproj - BG_STANDARD, BG_PROFESSIONAL, and BG_ENTERPRISE respectively. I can configure this as separate SolutionToBuild with an appropriate DefineConstants and OutDir in tfsbuild.proj. I have created a separate wixproj for the installation of each of these. They all share common components some of which require the string name of the product in order to create directories, name shortcuts, etc. In the wixproj I used candle DefineConstants to set "BGProductName=BeamGage Standard" which is then accessed in the components as $(var.BGProductName). This works fine in the IDE but fails under msbuild as described in another recent thread. Any ideas how I can pass these strings from one main component to various other common components? Kurt Jensen Senior Software Engineer Ophir-Spiricon www.ophir-spiricon.com <http://www.ophir-spiricon.com/> kurt.jen...@ophir-spiricon.com <mailto:kenneth.fer...@ophir-spiricon.com> The True Measure of Laser Performance(tm) ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This footnote also confirms that this email message has been swept by MIMEsweeper for the presence of computer viruses. www.clearswift.com ********************************************************************** ------------------------------------------------------------------------ ------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------ ------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------ ------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users