我一直在尝试访问驻留在我的计算机上的 MS Access 数据库文件,当我安装了 Office 时它工作得很好。
当我尝试在未安装 Office/驱动程序的计算机上使用相同的代码时,会抛出错误“Microsoft.ACE.OLEDB.12.0 提供程序未注册"
我跟进了这个帖子Microsoft.ACE.OLEDB.12.0 提供程序未注册 https://stackoverflow.com/questions/7170491/microsoft-ace-oledb-12-0-provider-is-not-registered但这里的解决方案是物理安装可再发行组件。而我想使用 C# 以编程方式进行安装。
难道只有通过物理安装才能实现吗?这是唯一的出路吗?
如果您的应用程序使用Microsoft.ACE.OLEDB.12.0
driver 那么该驱动程序必须安装在机器上。要(直接)“使用 C# 以编程方式”访问数据库文件本质上需要您(重新)编写Jackcess http://jackcess.sourceforge.net/在 C# 中。那将是一个huge工作量很大,并且没有任何实际意义(因为适用于 Windows 的 ACE.OLEDB 驱动程序已经免费提供)。
一种替代方法是使用Microsoft.Jet.OLEDB.4.0
司机代替。 (32 位)Jet 驱动程序随每个 Windows 副本一起安装。但是,您将面临以下限制:
- 您的应用程序只能操作
.mdb
文件,不是.accdb
文件,以及
- 您的应用程序必须构建为 32 位应用程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)