【发布时间】:2012-11-05 07:31:15
【问题描述】:
微软提供了两个access runtimes。 x86 和 x64 版本 - 不幸的是 x64 运行时版本无法打开 32 位 mde 文件,反之亦然。
检测安装了哪个运行时的最简单方法是什么?
我最喜欢的方式是询问注册表。
here 描述的方式不起作用,因为 access-runtime 不会创建 Outlook 注册表项。
【问题讨论】:
标签: ms-access
微软提供了两个access runtimes。 x86 和 x64 版本 - 不幸的是 x64 运行时版本无法打开 32 位 mde 文件,反之亦然。
检测安装了哪个运行时的最简单方法是什么?
我最喜欢的方式是询问注册表。
here 描述的方式不起作用,因为 access-runtime 不会创建 Outlook 注册表项。
【问题讨论】:
标签: ms-access
我通过这种方式解决了我的问题:
来自注册表 HKLM\SOFTWARE\Classes\Access.Application.14\shell\Open\Command 从默认密钥中,我获得了 msaccess.exe(2010 版)的路径。
然后我使用ImageLoad 函数打开该文件。 在返回结构中,我读取了机器字段。
LOADED_IMAGE.FileHeader.FileHeader.Machine
【讨论】:
我找到了this link,但我不知道它是否是失败证明。此注册表项在安装 64 位 Access 时存在。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\InstallRoot
【讨论】: