Condition builder
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?
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
Answers (4)
Please log in to answer
Posted by:
sikkert
18 years ago
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.
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.
Posted by:
jiiim
18 years ago
Posted by:
sikkert
18 years ago
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.
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.
Posted by:
Satin
18 years ago
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)
In the condition, check that if the value is not blank(or check it with the value you have in the package)
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.