Determining if Outlook is installed?

  • Thread starter Thread starter Tony Toews [MVP]
  • Start date Start date
T

Tony Toews [MVP]

Folks

I'd like to determine if Outlook is installed. Is it sufficient to
check for the existence of the following registry key?

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Outlook\InstallRoot
Value Path

Where the 12.0 can clearly change depending on the version of Outlook.

Now being a paranoid pessimist I'll also double check that the exe
mentioned in the path also exists.

What happens if the user has had an older version of Outlook installed
but now has a newer version? Does the older version registry key
still exist? Hmm, I'll start at 14.0 and go backwards to version
10.0 then.

Any other things to consider?

Tony
--
Tony Toews, Microsoft Access MVP
Tony's Main MS Access pages - http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
For a convenient utility to keep your users FEs and other files
updated see http://www.autofeupdater.com/
Granite Fleet Manager http://www.granitefleet.com/
 
What happens if the user has had an older version of Outlook installed
but now has a newer version? Does the older version registry key
Only a single instance of Outlook can be installed
 
Also keep in mind that your reg path will be different when it comes to x86
vs. x64 systems. If looking for a better reg key to check, might think to
check...

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\OUTLOOK.EXE
 
neo said:
Also keep in mind that your reg path will be different when it comes to x86
vs. x64 systems. If looking for a better reg key to check, might think to
check...

Ah, I keep forgetting about that minor detail. Time to purchase a
64 bit laptop. said:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\OUTLOOK.EXE

Thanks, Tony
--
Tony Toews, Microsoft Access MVP
Tony's Main MS Access pages - http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
For a convenient utility to keep your users FEs and other files
updated see http://www.autofeupdater.com/
Granite Fleet Manager http://www.granitefleet.com/
 
Only a single instance of Outlook can be installed

But does the old registry key get deleted?

What if they install an older version of Outlook on top of a newer
version? Oh well, not going to worry too much about that case.

Tony
--
Tony Toews, Microsoft Access MVP
Tony's Main MS Access pages - http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
For a convenient utility to keep your users FEs and other files
updated see http://www.autofeupdater.com/
Granite Fleet Manager http://www.granitefleet.com/
 
Try this function:

Function IsOutlookInstalled() As Boolean
On Error Resume Next
IsOutlookInstalled = (Not CreateObject("Outlook.Application") Is
Nothing)
End Function

--JP
 
JP said:
Try this function:

Function IsOutlookInstalled() As Boolean
On Error Resume Next
IsOutlookInstalled = (Not CreateObject("Outlook.Application") Is
Nothing)
End Function

Ah, now that's an interesting idea. I'll play around with that a bit.
My concern though is it might take several seconds to return a
response while waiting for Outlook to start up.

Tony
--
Tony Toews, Microsoft Access MVP
Tony's Main MS Access pages - http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
For a convenient utility to keep your users FEs and other files
updated see http://www.autofeupdater.com/
Granite Fleet Manager http://www.granitefleet.com/
 
Back
Top