检测计算机上是否安装了Microsoft Access以及Microsoft Access c#的版本

本文关键字:Microsoft Access 以及 版本 计算机 是否 安装 检测 | 更新日期: 2023-09-27 18:28:57

客户要求我制作一个销售点系统,我一直在使用本地数据库(Microsoft Access 2010)。

因此,我一直在思考这个问题:应用程序如何检测计算机上是否安装了Microsoft Access以及安装了哪个版本

检测计算机上是否安装了Microsoft Access以及Microsoft Access c#的版本

如果我没记错的话,如果你只想从C#访问数据库文件mdb/accdb,那么你真的不需要在系统上安装Access。您所需要的只是一个ODBC或OLEDB驱动程序;可从Microsoft免费下载。我认为最新版本的Windows已经安装了它们,但我不确定,也无法验证,因为我的所有系统都安装了Access。

然而,如果您想将其用作销售点系统的基础,这不是一个好主意,因为Access太不安全,容易损坏,而且没有任何集成的备份机制。对于像POS这样重要的东西,使用SQL Server应该被认为是最低限度的。

单向(比特需要匹配):

Type Access = Type.GetTypeFromProgID("Access.Application");
if (Access != null)
{
    dynamic access = Activator.CreateInstance(Access);
    string ver = access.Version;
}

您可以使用RegistryKey类迭代键。

RegistryKey key = Registry.LocalMachine.OpenSubKey(@"HKEY_LOCAL_MACHINE'SOFTWARE'Microsoft'Office");
foreach (String keyName in key.GetSubKeyNames())
.....