Here's what I want to do.
I want a custom action to run > if NOT INSTALLED OR (here's the tricky part) "this product is NOT installed" {B02348-2372752-BD6345}. Is this condition possible to build?
0 Comments   [ + ] Show 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.


So you want the CA to run if this application OR a different application is not installed?
If so, I would use the appsearch functionality to search for the other application. The result will then be stored in a property, which makes the condition simple:
"If NOT Installed OR NOT <propertyname>".
Just remember to put the CA after the AppSearch SA.
Answered 03/22/2006 by: sikkert
Orange Senior Belt

Please log in to comment
I'm not exactly sure how to use the appsearch function, would you mind giving me a brief explanation? [;)]
Answered 03/22/2006 by: jiiim
Senior Yellow Belt

Please log in to comment
AppSearch is (for some reason I'm not quite sure of) not able to search for an application directly. However, you can search for files, folders or components.
Personally, I would probably use AppSearch to look for the component that the exe-file of the other application is part of.

This would lead to the following:

AppSearch table:
Property: the name of the public property (all caps) to set if the component is found, for example "OTHERAPP"
Signature_: an identifier for this search, for example "SearchForApp"

CompLocator table:
Signature_: same as in the AppSearch table
ComponentId: the GUID of the component you are looking for
Type: 1

Now, the property OTHERAPP will be true if the component is installed on the target machine.
Then, just make sure your Custom Action is placed after the AppSearch SA, with a condition of "NOT Installed OR NOT OTHERAPP".

Hope this helps.
Answered 03/23/2006 by: sikkert
Orange Senior Belt

Please log in to comment
The best way here will be to use appsearch to look for the "Raw" registry key in HKLM\Software\Microsoft\Windows\Uninstall\<packageid> with any of the string and value pair that the package has made .

In the condition, check that if the value is not blank(or check it with the value you have in the package)
Answered 03/24/2006 by: Satin
Senior Yellow Belt

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