[8D]

Hello everyone!

OK, this is quite a difficult question I think, but does anyone know the processing order of the AppSearch table?

To explain myself better, I have put together an example below:

First of all, I want to search for a registry value 'HKLM\SOFTWARE\Application\Version' and assign it to the MYPROP_APPVERSION property.

Then, once I have the above property set, I then want to search for the following value 'HKLM\SOFTWARE\Application\[MYPROP_APPVERSION]\InstallationPath'

[;)] See where I'm going with this now??? [;)]

Anyways, I can't seem to control the order of the AppSearch table, so that my first property ('MYPROP_APPVERSION') is evaluated before the installation evaluates the second value.

Takers anyone???

[8D]
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
According to the MSDN AppSearch Table documentation (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/appsearch_table.asp)

Appsearch table is used by the AppSearch action. The AppSearch action searches for signatures using the CompLocator table first, the RegLocator table second, the IniLocator table third, and finally the DrLocator table. File signatures are listed in the Signature table. A signature that is not in the Signature table denotes a directory and the action sets the property to the directory path for that signature.

So yeah, it will process the file (CompLocator table) before it processes the registry (RegLocator table). Not the way you want to go, and it doesn't look like this can be altered. You'll have to pull that registry key in a custom action performed right before the AppSearch. Then you'll be good to go.
Answered 02/03/2005 by: VikingLoki
Second Degree Brown Belt

Please log in to comment
0
[8D]

Yeah, thats what I have had to resort to.

I would prefer to keep all these things in the native MSI format though, rather than adding heaps of CA's to it.




I've found out that if I add my second AppSearch to the MSI table first, and then add the first one, compile the MSI, then it works in the correct order. Dodgy though.......
Answered 02/03/2005 by: brenthunter2005
Fifth Degree Brown Belt

Please log in to comment
0
Really? That's not what the documentation says.. Good job, Microsoft! I wouldn't be concerned with a CA like that, you're just retrieving a small piece of information. It's essentially just a read-only CA. Now if it were a signifcant Read/Write kind of CA, then thats something to avoid.
Answered 02/03/2005 by: VikingLoki
Second Degree Brown Belt

Please log in to comment
Answer this question or Comment on this question for clarity