Jump to content
Macro Express Forums

Determining program version


Cory
 Share

Recommended Posts

For one client we have enjoyed one version of Office for some time but now we have a mix. Certain macros need to be tweaked for the different versions so I would like to use ME to determine which version of, say, Outlook is installed and perform slightly different instructions. I have some ideas how I might divine this but I was wondering how others addressed this problem.

Link to comment
Share on other sites

For one client we have enjoyed one version of Office for some time but now we have a mix. Certain macros need to be tweaked for the different versions so I would like to use ME to determine which version of, say, Outlook is installed and perform slightly different instructions. I have some ideas how I might divine this but I was wondering how others addressed this problem.

 

One solution is to use the registry to obtain the information. ie:

 

HKEY_LOCAL_MACHINE

Software

Microsoft

Office

 

But I am interested in reading other solutions. :) Sometimes the simple-ist solution is the best solution. (and the registry isnt so simple).

Link to comment
Share on other sites

I don't think the registry is difficult but I still don't see an elegant method in there. What I mean is there isn't a key I know of that says "Current Office Version". When I look at it now on my machine I have several folders beneath Office like 11.0, 12.0, 8.0, 9.0, and a bunch of other stuff. But there's no "If reg folder exist" so I'm not sure how I would efficiently make a determination. Do you know of some key or something I am missing? I mean how would you do it?

 

The more I look at it the more I think I need to query the file with "Get Version of" and point to "Outlook.exe" or whatever. The only monkey wrench here is the install path is a moving target from machine to machine. This got even more difficult now that 64 bit systems have an additional "Program Files (x86)" folder. Ug. But I could probably look in all the common places and ferret it out.

 

I see some scripts on line as well so that might be the other solution but I was hoping to do this in ME. And I'm lazy which is the whole reason I posted here... to avoid a bunch of research! :)

 

Thanks

Link to comment
Share on other sites

If you know the path to the outlook.exe file you can do this:

Variable Set String %T1% to "c:\Program Files\Microsoft Office\Office10\Outlook.exe"
Get File Version: "%T1%" into %T2%

The problem with this is that Microsoft puts Outlook in different folders for the different versions. So you have to know the version before you can determine the version. :blink:

Link to comment
Share on other sites

That's exactly the method and concern I outlined earlier. Maybe a combination of registry to find path and file version will be the trick. I can figure something out, I was just hoping that someone who had experienced this before might have some suggestions.

 

Another possibility is to have the user manually set a preference. Might be the easiest.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...