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

Reply via email to