2

there are two access runtimes provided by microsoft. a x86 and x64 version - unfortunately a x64 runtime version can't open 32bit mde-files and vice versa.

What is the easiest way to detect which runtime is installed?

My favorite way is asking the registry.

The way described here doesn't work, because access-runtime doesn't create the outlook registry key.

Cœur
  • 34,719
  • 24
  • 185
  • 251
coding Bott
  • 4,187
  • 1
  • 26
  • 43

2 Answers2

2

I solved my problem on this way:

from registry HKLM\SOFTWARE\Classes\Access.Application.14\shell\Open\Command from the default key i get the path to the msaccess.exe (Version 2010).

then i open that file with the ImageLoad function. in the returning structure i read the machine field.

LOADED_IMAGE.FileHeader.FileHeader.Machine

coding Bott
  • 4,187
  • 1
  • 26
  • 43
0

I found this link but I don't know if it is fail proof. This registry key exists when 64 bit Access is installed.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\InstallRoot
HelloW
  • 1,557
  • 1
  • 13
  • 24