cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
chbiki
Level 6

How tell Installshield to install a feature only if known application...

Hi all,
I have a MSI basic Project.

How can i tell Installshield to install a feature only if a known application (Lotus Notes) is already installed on the target system ?

Any Helps would be appreciated !
Labels (1)
0 Kudos
(9) Replies
chbiki
Level 6

can anyone help me please ?
0 Kudos
RobertDickau
Flexera Alumni

Perhaps set up a system search for the existing application (one of its files, registry keys, or suchlike) and then use that as a launch condition? The System Search view can help you set this up.
0 Kudos
chbiki
Level 6

thank you very much, i will try it and tell you the result...
0 Kudos
chbiki
Level 6

Hi Robert !
i did it as you told me, i make a system search for "HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Notes" and saved it in a property called "LOTUS". In the feature option "condition" i wrote: LOTUS="HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Notes".
During a test setup windows insteller prompt an information wich i set to the condition and the setup interupted.
Waht i need: if the registry entry not found, just disable the feature so that it cant be instelled and the setup go on with the rest of the installation.
Any help would be appreciated !
0 Kudos
Androns
Level 4

helo, Chbiki!
U need to create component for Lotus notes, and create an condition, if there is found a reg key, file or what so ever you store this property in Global variable ex. LOTUS_BOOL. in this variable u store the system search result, and then chek this variable in install component condition..
hope this helps 🙂
0 Kudos
chbiki
Level 6

Hello Androns,
thank you for the answer, can you tell me how to "create an condition, if there is found a reg key". I have a feature named lotusNots, every feature has a option named "condition", by cliking there it comes a window with condtion(table) which has 2 colomns level and condition. With global variables i habe less experience. Can you give a little hints/docus/links.

thank you very much in advance !
0 Kudos
KathyMorey
Level 10

You said you have a public property "LOTUS" that you set up in system search. Now make sure that that property does not appear in your Property Manager.

Then, in your feature condition, simply put the name of the property.

This way, if LotusNotes is not installed, the property won't exist and the feature condition will be false. If it is installed, the property will be set by AppSearch and the feature condition will be true. You don't need to care about the contents of the property at all.

(And you can only set global variables in InstallScript; I think Androns was actually referring to properties.)
0 Kudos
jlsymantec
Level 3

KathyMorey wrote:
You said you have a public property "LOTUS" that you set up in system search. Now make sure that that property does not appear in your Property Manager.

Then, in your feature condition, simply put the name of the property.

This way, if LotusNotes is not installed, the property won't exist and the feature condition will be false. If it is installed, the property will be set by AppSearch and the feature condition will be true. You don't need to care about the contents of the property at all.

(And you can only set global variables in InstallScript; I think Androns was actually referring to properties.)


Hi this method doesn't work in IS2008. If you do that, a dialog appear before the installation menu and ask you that Lotus isn't install and it will automatically quit installer.
It doesn't disable feature.

is there a way to disable feature when an application doesn't exist on your system?
0 Kudos
TheResearch
Level 6

Go to Features -> Select the feature you want to set the condition -> Under condition -> Set the Level as '0' and the condition as LOTUS="0".

Also, make sure that the LOTUS property has '0' value in the Property table.

In the System Search, if Lotus application is installed, LOTUS property will be populated with the correspondng registry.

So, setting the Feature Level as 0(zero), will ensure that this feature is not installed.

Hope this solves your problem.
0 Kudos