It looks like you're mixing up FileSearch/DirectorySearch and
RegistrySearch. 

An MSI AppSearch for a registry item has no version limitations - it
returns the path to the file. That's what you've got. 

A Directory/File search can limit version ranges, but you start with a
DirectorySearch path, something like (no angle brackets):

Property ID = "FLASH"
DirectorySearch Path="[SystemFolder]Macromed\Flash"
Depth, Id etc ....
FileSearch Name ="flash.ocx" MinVersion="8.0.24.0" 

And FLASH is set if it's found with those version restrictions. There is
no nesting of AppSearch. 

Something you'll need to watch out for is that they rename the OCXs,
which is probably why you started with a CLSID search. So you can do
several FileSearches in that folder for flash.ocx, flash9.ocx etc and
use any of the resulting properties for success, or pass that path
you've got into a custom action to go get the version.  I don't know if
WiX has any additional search helpers for this, but the MSI AppSearch on
the registry won't do a version check for you. 

Phil Wilson 

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Gareth at
Serif
Sent: Tuesday, August 14, 2007 4:29 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] AppSearch nesting


Hi,

I am trying to use AppSearch to determin if the installed version of
FlashPlayer is sufficient (greater than 8.0.24.0) and have nested some
searches as follows:
<Property Id="FILEVERSIONTEST" Secure="yes">
        <RegistrySearch Id="FileVersionTestA" Root="HKCR"
Key="CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32"
Type="raw">
                <FileSearch Id="FileVersionTestB"
LongName="[FileVersionTestA]"
MinVersion="8.0.24.0" />
        </RegistrySearch>
</Property>

The resulting log file from the install says:
AppSearch: Property: FILEVERSIONTEST, Signature: FileVersionTestB
MSI (c) (7C:A0) [10:54:29:026]: PROPERTY CHANGE: Adding FILEVERSIONTEST
property. Its value is 'C:\WINDOWS\system32\macromed\flash\flash.ocx'.

The version of FlashPlayer this sytem has is 6.0.79.0.

As such, I'd expect the AppSearch to return false, which it kind of does
in
maintaining the path found in the registry, but when I tweaked the MSI
to
test for version 1.0.0.0 the log file was identicle.  I suspect the
failing
is in the declaration of my 'LongName' attribute for the FileSearch, but
I
can't get my head round how this behavious should work.

Any pointers would be great,
Gareth

-- 
View this message in context:
http://www.nabble.com/AppSearch-nesting-tf4266665.html#a12142727
Sent from the wix-users mailing list archive at Nabble.com.


------------------------------------------------------------------------
-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to