cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
dbeukers
Level 3

Install not recognizing installed Office 2010

I built an install for an Excel add-in, including a dependency on Office 2007 or greater. For testing, I am installing it on a virtual machine (Win 7 32 bit running on Win 8.1 host with Hyper-V). To test the dependency, I first tried installing before installing Office. It first detected other missing dependencies, like .NET 4.0 Full, and apparently installed them before correctly aborting on detecting the missing Office. I then installed Office 2010 and retried my install. It still reports that Office 2007 or greater must be installed, and quits. I even tried restarting the VM with no effect. Why is it not detecting Office? Last I knew, 2010 was greater than 2007!
0 Kudos
(5) Replies
NameTooShort
Level 7 Flexeran
Level 7 Flexeran

I think there is a typo with that description.
It checks just the version being checked in the Project Assistance.
0 Kudos
dbeukers
Level 3

I may be new to InstallShield, but I don't understand your comment. Are you saying there is a typo in InstallShield? In Project Assistant|Installation Requirements, there is a question "Does your application require any software to be installed on the machine?" I checked "Yes", Then checked "Microsoft .NET Framework 4.0 Full package" and "Microsoft Office 2007". The message for the Office 2007 condition is "Microsoft Office 2007 or greater needs to be installed for this installation to continue." In the alternate view, the "Requirements" step has these both checked also. The description for Office 2007 is "The installation runs only if Office 2007 is installed on the target system." However, the message to be displayed is the same as previously mentioned, of Office 2007 *or greater*. Are you saying that it only checks for 2007, not the 'or greater' part. That would be a pretty useless condition. I am sure that the makers of InstallShield would know better than that.
0 Kudos
NameTooShort
Level 7 Flexeran
Level 7 Flexeran

It might be a bug.

The installer currently searches for a registry entry(SOFTWARE\Microsoft\Office\12.0\Common\InstallRoot\Path) and stores it in a property.
It then checks the existence of the property as an install condition.
0 Kudos
dbeukers
Level 3

If it is checking *only* that path, that is a problem. The 12.0 portion of the path is version-specific for 2007. 2010 uses 14.0 and 2013 uses 15.0. In addition, other parts of the path might change: the VM with 2013 uses a similar path, but the host machine with 2013 has only a Virtual subkey under InstallRoot, with various entries under that. Each application key does have an InstallRoot subkey with a Path entry in all configurations I have tried.
0 Kudos
dbeukers
Level 3

It appears that it *is* only checking the one version selected. If one wants to check for "2007 or greater" as the message implies, there is apparently no way to have InstallShield do this for you (unless you could 'OR' conditions, but conditions appear to be strictly an 'AND' -- all or nothing). Fortunately, I was able to find a way to do this with a custom action executable that appears to work correctly (so far, anyway.)
0 Kudos