Hi Guys,
I need your help please.
I was asked by my supervisor to package an msi " myMsi.msi" and create a dialogue box or message box to check if MS office is installed on the machine or not and then prompt the user for action whether to install office in case it is not there or not to install it in case it is already there.

It sounds a bit challenging to me. Some might say why not install office first and then install the msi normally. The reason is the application I am packaging and which spends time looking for word and excel before starting the install. But if we create this dialogue box, we would have saved time for the application to search all around to find out if word or excel is there or not.

Please I need your help..It is very urgent and I am really a newbie in thie field.

Thanks Guys in advance...Any idea will help

yours.
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
You can set up a system search in your package, to look for certain registry values that are present when Office is already installed on the machine :

For Office XP, the "Path" registry value will be present in the following key

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\10.0\Common\InstallRoot

For Office 2003, the "Path" registry value will be present in the following key

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\InstallRoot

The system search, upon finding the registry value, would set a property which you could then use in a Launch Condition. If the registry value is not found, then the property would be undefined.

Launch conditions are handy because they will create a simple dialog box for you (with a message of your choice) if the installation is not possible due to criteria not being met.

You don't mention which packaging tool you are using - InstallShield, for example, has a wizard that lets you set up a system search and associated launch condition in one go - so below are the manual changes you could make to prevent your package installing if Office 10 is not already installed.

1) Add the following row to the RegLocator table :

Signature_ : NewSignature1
Root : 2
Key : SOFTWARE\MICROSOFT\OFFICE\10.0\COMMON\INSTALLROOT
Name : Path
Type : 2

2) Add the following row to the AppSearch table

Property : OFFICE10INSTALLPATH
Signature_ : NewSignature1

3) Add the following row to the LaunchCondition table

Condition : OFFICE10INSTALLPATH <> ""
Description : Microsoft Office must be installed first before installing this package.

Hope this helps in some way

Spartacus
Answered 11/17/2006 by: spartacus
Black Belt

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