that means that I didn't actually do smth wrong in the code, it's just that I can't really control that?
On 4/28/2010 12:50 PM, Blair wrote: > Unfortunately with MSI's AppSearch action, you don't have any real control > over the order of the attempted resolution of each of the various > properties. > > -----Original Message----- > From: Viv coco [mailto:vcotirl...@hotmail.com] > Sent: Friday, March 26, 2010 2:18 AM > To: WiX > Subject: [WiX-users] FileSearch on INSTALLLOCATION, whereas INSTALLLOCATION > is either registry entry or nested Directory tag > > > Hi, > > > > In the WiX tutorial is a sample that does: > - reads the path to the installation directory from the registry > - checks if in that directory a specific file exists > - if yes, installs the a specific feature (docu) > What I would have wanted would have been: > - reads the path to the installation directory from the registry > - checks if in that directory a specific file exists OR checks if in the > default path (created by the nested Directory tags) the file exists > - if yes, installs the docu feature > > I thought that by doing the FILEEXIST File search by using the INSTALLDIR > would mean that the File search is done in the INSTALLDIR which is either > the registry value if that one exists in the registry, OR the default > directory paths specified by nested Directory tags if the registry value was > not found. But it seems that when the FILEEXIST condition is evaluated the > INSTALLDIR is set to whatever was found in the registry, which means if the > registry entry was not found, at this point the INSTALLDIR will be empty and > it won't be, as I expected, the nested Directory tags we specified. > > > > [code] > <!-- Check if in the registry we have already saved the path where the > app should be installed --> > <Property Id="INSTALLLOCATION"> > <RegistrySearch Id="MyPathsFromRegistry" Type="raw" Root="HKLM" > Key="Software\MySetup" Name="InstallDir"/> > </Property> > > <Directory Id="TARGETDIR" Name="SourceDir"> > <Directory Id="ProgramFilesFolder"> > <Directory Id="MyFirstSetup" Name="MyFirstSetup"> > <Directory Id="INSTALLLOCATION" Name="MyFirstSetup1.0"> > > <Component Id="MyExe" > Guid="9660051E-43CA-4459-AEF1-290BBE3DE544"> > <File Id="MyMainExe" Name="MyApp.exe" > Source="..\MyApp\Debug\MyApp.exe" DiskId="1" KeyPath="yes"/> > </Component> > > <Component Id="MyDocumentation" > Guid="5D64FD41-B8FF-4B77-8777-4CFD81855A0B"> > <File Id="MyDocu" Name="readme.txt" > Source="..\MyApp\Debug\readme.txt" DiskId="1" KeyPath="yes"/> > </Component> > > </Directory> > </Directory> > </Directory> > </Directory> > > <!-- check if in the installation directory (egal if it's the one > gathered from registry or the default one) has a lookfor.txt file and if not > don't install the documentationc --> > <!-- !!! ACTUALLY !!! for some reason, when the following Property is > evaluated the INSTALLLOCATION is set to whatever was in the registry, and if > no key was found in the registry this value is empty, so it was not yet set > to whatever default directory path was specified with the nested Directory > tags--> > <Property Id='FILEEXISTS'> > <DirectorySearch Id='DirSearch' Path='[INSTALLLOCATION]' Depth='0'> > <FileSearch Id='FileSearch' Name='lookfor.txt'/> > </DirectorySearch> > </Property> > > <Feature Id="CompleteExe" Level="1"> > <ComponentRef Id="MyExe" /> > </Feature> > <!-- install this feature only if you find the lookfor.txt file (Level 0 > means the feature won't be installed) --> > <Feature Id="CompleteDoc" Level="1"> > <ComponentRef Id="MyDocumentation" /> > <Condition Level="0"> NOT FILEEXISTS</Condition> > </Feature> > [/code] > > > > How can I do so that the FileSearch is done in INSTALLLOCATION whereas the > INSTALLLOCATION is either the registry entry if found or the nested > directory tag if registry entry was not found? > > > > TIA, > Viv > > > _________________________________________________________________ > Hotmail: Trusted email with powerful SPAM protection. > https://signup.live.com/signup.aspx?id=60969 > ---------------------------------------------------------------------------- > -- > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > _______________________________________________ > 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