• Global community
    • Language:
      • Deutsch
      • English
      • EspaƱol
      • FranƧais
      • PortuguĆŖs
  • ę—„ęœ¬čŖžć‚³ćƒŸćƒ„ćƒ‹ćƒ†ć‚£
    Dedicated community for Japanese speakers
  • ķ•œźµ­ ģ»¤ė®¤ė‹ˆķ‹°
    Dedicated community for Korean speakers
Exit
0

Which is the correct Registry Path to Get Adobe Acrobat Version?

Guest
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

Hi All

Originally, this post was put  on [Acrobat Windows] forum, i am reposting it here, since i didnt get any answer.

I am currently using Adobe Acrobat 9.1.3 Pro in my Win XP - SP3 machine.
I would like to know how can i get the 'CORRECT' version of the installed Adobe Acrobat from the registry.

Under windows Registry, i could find two places
- HKEY_CLASSES_ROOT\AcroExch.App\AcrobatVersion.
- HKEY_CLASSES_ROOT\AcroExch.Document\AcrobatVersion.

Among these two, the first keys value shows as 8.0 and the latter shows as 9.0. I guess the first one is the correct place to look but it shows as 8.0.
by the way, i have installed it on a fresh clean machine. So is it a bug from Adobe Acrobat ? or is it correct for Adobe Acrobat ( may be in some way).

In that case can i  use 'AcroExch.Document' but will it be retained in the future versions also.

thanks in advance

regards

~jafeel

TOPICS
Acrobat SDK and JavaScript

Views

48.4K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

Why do you need to know? Are you doing this in a separate application? In

a plugin? Other?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

Hi Leonard,

Yes, we are doing it in a separate application. While invoking our main application we query if there is any  Adobe Acrobat installed in the machine, if so we query the version for our usage. If it doesnt matches our requirement we exit our main application with an erro message to have the required version to be installed.

thanks and regards

~jafeel

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

You can check this registry key :

"HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\Adobe Acrobat\x.0\Installer\Path" which give the installation path.

You have to check that for all supported version for instance 7.0, 8.0 and 9.0.

Do the same if you want check the version of Acrobat Reader.

Hope that can help you,

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

hi joel,

i was also thinking in the same line !!!

But figuring out something small as the version from the registry takes me to iterate through a set of registry path is a cumbersome but i had to live with it as adobe doesnt provide me with any other choice.

But it should be as simple as a key in the registry to query to get the values for something like a version. But the keys which i mentioned in the first mail has the info but i guess because of the BUG (i presume to be so) i cannot rely on it. šŸ˜ž

regards

~jafeel

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

Why are you querying the registered OLE interfaces for the application version number?  They are distinct and completely the wrong place to query for version.

[HKLM\SOFTWARE\Adobe\Adobe Acrobat\X.0\Installer]

VersionMax = 0x00090001

VersionMin = 0x00020000

That would be Acrobat 9.1.2

Where X is the major version (i.e. 7, 8, 9).  There may be more than 1 major version tree used for compatibility with add-on and legacy applications (even if you installed on a clean machine - this is not a bug it is intended behaviour) but only the currently installed version will have sub-keys under the Installer key.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Sep 09, 2009 Sep 09, 2009

Copy link to clipboard

Copied

Hi Patrick,

We are using it to query the version of the installed Adobe Acrobat in the machine in which our application is installed. If it doesnt matches our criteria, we ask the user to have the correct version to be installed.

We queried the OLE interface for the Acrobat Version because at a time you are suppose to have one installation of the Adobe Acrobat. And morevoer the OLE reg path is giving the 'Acrobat Version'. For AA8.X both the OLE registry keys were having the same version number i.e 8.0.

Yes, i guessed that the reason for multiple versions under the [HKLM\SOFTWARE\Adobe\Adobe Acrobat\X.0\Installer] may be for some backward compatibility. Anycase, i have already gone with the HKLM...\X.0\Installer path way.

But why is that the OLE interfaces in the registry shows two different 'Acrobat Version' for the AA9.??

thanks and regards

~jafeel

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
Sep 10, 2009 Sep 10, 2009

Copy link to clipboard

Copied

Attached VBS will do what you want.

Your info, you get from Windows: FileSystemObject

The RegRead command is only to get the path of the executable.

In an advanced programming you can replace this command with an API call: FindExecuteable

HTH, Reinhard

AcGetVersion.vbs

-------------------------------------------------------------

Set WshShell = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")

'  // Get the path

Path = WshShell.Regread("HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\Acrobat.EXE\Path")
Path = Path &"\"& "Acrobat.exe"

msgbox(Path)
'  //Get the version

msgbox FSO.GetFileVersion(Path)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Sep 10, 2010 Sep 10, 2010

Copy link to clipboard

Copied

LATEST

The .exe can not be used to reliably detect the version. Acrobat 9.3.4 exe file (acrord32.exe) reports 9.3.3, the dll (acrord32.dll) reports 9.3.4

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines