I need to perform a number of RegistrySearches (approx. 200) to determine if a product is installed and some properties about each product installation, such as the product name, the version, and language.
For instance, I set the PRODUCT2010_INSTALLED property, if this product is installed <Property Id="PRODUCT2010_INSTALLED" Value="0"> <RegistrySearch Id="rs1" Root="HKLM" Key="SOFTWARE\Company\Product2010\" Name="Location" Type="directory" /> </Property> Since this product was installed, I would like to query for these additional values (if the key above does not exist, then the following properties would not need to be set). <Property Id="PRODUCT2010_NAME" Value="0"> <RegistrySearch Id="rs2" Root="HKLM" Key="SOFTWARE\Company\Product2010\" Name="Name" Type="raw" /> </Property> <Property Id="PRODUCT2010_VERSION" Value="0"> <RegistrySearch Id="rs3" Root="HKLM" Key="SOFTWARE\Company\Product2010\" Name="Version" Type="raw" /> </Property> <Property Id="PRODUCT2010_LANGUAGE" Value="0"> <RegistrySearch Id="rs4" Root="HKLM" Key="SOFTWARE\Company\Product2010\" Name="Language" Type="raw" /> </Property> Now multiply this by 40+ different products. What is the most efficient way to perform a series of registry searches? Is there a way to: a.) nest RegistrySearches, or b.) conditional perform the latter 3 queries, only if the first one is installed (maybe using custom actions)? Should I not worry about it and just perform each of the 200+ sequential RegistrySearches? Should I write a DTF CustomAction that traveres the registry optimally and set MSI properties as necessary? Thanks in advance. Tom ------------------------------------------------------------------------------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users