That worked, thank you! And of _course_ var.PROGRAMFILESFOLDER is going to have issues at build time, what was I thinking? *sigh*
On 5/22/07, Mike Dimmick <[EMAIL PROTECTED]> wrote: > You're looking for something defined at build time. Try $(env.ProgramFiles). > > Windows defines the ProgramFiles environment variable to the location of the > Program Files folder. > > I'm not guaranteeing this will work as I don't have an x64 system and don't > know whether ProgramFiles is defined differently for a 64-bit versus 32-bit > process. I _think_ that since the WiX toolset is compiled with .NET 1.1, all > the programs will run in 32-bit processes. > > Personally I prefer to put all my dependencies under my source tree and > check them into source control so I can be certain that all builds are fully > reproducible. > > -- > Mike Dimmick > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Geoff Finger > Sent: 22 May 2007 23:23 > To: wix-users@lists.sourceforge.net > Subject: [WiX-users] Allowing sources from either x64 or x86 > > I've got a rather simple question that is probably due to some obvious > in hindsight error, but I'm totally stymied by it and haven't had any > luck searching for a solution. > > I just recently switched from an x86 machine to an x64 machine running > XP x64. I suddenly find that some of the installers I've written don't > compile because they're looking for files in "Program Files" rather > than "Program Files (x86)". In particular the Microsoft VC80 CRT and > MFC merge modules in Program Files (x86)\Common Files\Merge Modules > are being problematic. > > I thought for starters I could try using ProgramFilesFolder to see if > that would resolve properly, but I can't get it to work correctly. > > I've got the following setup in the relevant wxs file: > > <?if ($(var.PLATFORM) = "Win32")?> > <?define PROGRAMFILESFOLDER = "ProgramFilesFolder"?> > > <Directory Id="$(var.PROGRAMFILESFOLDER)" > Name="PFiles"> > > > So at first I thought it'd try > > <Merge Id="CRT" Language="0" src="$(var.PROGRAMFILESFOLDER)\Common > Files\Merge Modules\Microsoft_VC80_CRT_x86.msm" > DiskId="1" FileCompression="yes" /> > > However that results in the error: > > Error 25 error LGHT0100 : File of type 'Module' with name > 'ProgramFilesFolder\Common Files\Merge > Modules\Microsoft_VC80_CRT_x86.msm' could not be found. light.exe > > So it's getting resolved to ProgramFilesFolder but not getting any > further. I tried [ProgramFilesFolder] instead, but that didn't work > either. Is there some other variable I should be using or am I going > about this in entirely the wrong way? > > Thanks! > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users