如何区分 MS Access 完整版和 Access 运行时
Posted
技术标签:
【中文标题】如何区分 MS Access 完整版和 Access 运行时【英文标题】:How to distiguish between MS Access Fullversion with Access Run-Time 【发布时间】:2009-07-27 09:16:53 【问题描述】:我的应用程序是为扫描 vb.net 2005 中的 MS Access 数据库而构建的。
问题:
当系统中安装了 Access Run-Time(但没有 MS Access 的完整版)时,MS Access DB 正在打开。但是在通过我们的工具扫描时显示错误。
解决方案:
只需要完整版的 MS Access。
建议:
为了确定,在安装我们的工具(通过 MSI)时是否安装了所需的应用程序(比如这里我们需要 MS Access 完整版)。
是否可以在安装工具时使用 Run-Time 识别 MS Access 完整版?
据我所知,安装时可以识别应用程序及其版本。
任何人都可以建议我是否可能,如果可以,请提供一些有用的参考或链接。
谢谢。
【问题讨论】:
【参考方案1】:由于您要求在安装过程中测试的答案,最简单的答案是查询注册表。在 Access 2007 之前,Access Run Time 有一个特定的键,但在 2007 中,您似乎需要检查 Office 注册表层次结构的 Installed Packages 路径。
这是 Access 2007 Runtime 的密钥:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Common
\InstalledPackages\90120000-001C-0409-0000-0000000FF1CE
这是 Access 2007 的关键:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Common\
InstalledPackages\90120000-0015-0409-0000-0000000FF1CE
如果您稍后想重新验证设置是否仍如您所愿/需要,请尝试以下操作:
IF SysCmd(acSysCmdRuntime) = true THEN
...
END IF
【讨论】:
请注意 if syscmd() 将不起作用,因为他说他们正在使用 vb.net。以上是关于如何区分 MS Access 完整版和 Access 运行时的主要内容,如果未能解决你的问题,请参考以下文章