Microsoft.ACE.OLEDB.12.0 提供程序未注册 [英] Microsoft.ACE.OLEDB.12.0 provider is not registered
问题描述
我的应用程序是用 C#
编写的,并使用 Ms-Access 2003
,我希望它在 64 位
Windows 安装中正常运行.我在连接字符串中使用数据提供程序作为 ACE.OLEDB.12.
0,但它仍然给出 Microsoft.ACE.OLEDB.12.0
提供程序未注册的异常虽然我已经在目标机器上安装了 Microsoft Access Databse Engine 2010
(32-bit
)(因为目标机器的 Office
安装是 32 位
).
My application is written in C#
and uses Ms-Access 2003
and I want it to run properly in 64-bit
Windows installation. I use the data provider as ACE.OLEDB.12.
0 in the connection string, but it still gives the exception that Microsoft.ACE.OLEDB.12.0
provider is not registered though I have installed the Microsoft Access Databse Engine 2010
(32-bit
) in the target machine (As the target machine's Office
installation is 32-bit
).
我关注了以下帖子 Microsoft.ACE.OLEDB.12.0 提供商未注册以及 msdn
和其他 microsoft
站点中的许多其他帖子,问题解决了,因为他们说要编译为 x86
.我想知道是否有另一种不需要编译为x86
...
I followed to the following post Microsoft.ACE.OLEDB.12.0 provider is not registered
and many other posts in msdn
and other microsoft
sites and the problem solves as they say to compile to x86
. I want to know whether there is another way of solving this problem which does not require compiling to x86
...
推荐答案
您不必针对 x86 进行编译,但需要在 64 位机器上安装 64 位 Access OLEDB 提供程序.可在此处获取:Microsoft Access Database Engine 2010 Redistributable
You don't have to compile for x86, but you need to install the 64-bit Access OLEDB provider on a 64-bit box. It's available here: Microsoft Access Database Engine 2010 Redistributable
这篇关于Microsoft.ACE.OLEDB.12.0 提供程序未注册的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!