Microsoft.ACE.OLEDB.12.0提供程序未在本地计算机上注册错误 [英] Microsoft.ACE.OLEDB.12.0 provider is not registered on the local machine error
问题描述
我的源代码写在作为服务器的系统上使用Windows Server 2008 R2企业版。 我的
app配置在VS2012中设置为'Any CPU'。我在服务器上安装了Microsoft Access 2007 64位。我使用Microsoft.ACE.OLEDB.12.0作为提供者。 当我从 运行应用程序时网络中的其他
计算机中的大多数都可以访问数据库而且工作没有问题。但在某些客户端出现此错误: 'Microsoft。 ACE.OLEDB.12.0'
提供程序未在本地计算机上注册错误。
任何想法?
Thanks
有问题的计算机可能不是64-位,或者根本没有安装提供程序(默认情况下它没有安装在计算机上)。因为您的应用程序是使用x64提供程序开发的(并且您指定了"AnyCPU"),所以
将会有在x86计算机上运行的问题(不是x64提供程序)。
Microsoft建议尽可能坚持使用32位版本的Access,可能是出于这个原因。
如果那些有问题的计算机*是* 32位,他们可能能够安装32位提供程序来解决问题。
这个链接是下载对于32位 ACE.OLEDB.12.0(适用于Access 2007):
https://www.microsoft.com/en-us/download/details.aspx?id=23734
这个链接也是ACE.OLEDB.12.0(适用于Acce ss 2010)。唯一的 我在第二个链接中看到的差异是除了x86之外还有x64下载。我不知道的是x86版本是否与
Access 2007上面的链接相同。在此页面的详细信息中写的内容使它听起来像是适用于旧版本*和*最新版本的Access。
https://www.microsoft.com/en-us/download/details.aspx?id=13255
My source code is written on the system that is the server with windows server 2008 R2 Enterprise . My app configuration is set to 'Any CPU' in VS2012. I have installed Microsoft Access 2007 64 bit on server. I am using Microsoft.ACE.OLEDB.12.0 as provider. When I run the app from other computers in the network most of them can access the database and it is work without problem. but in some of clients this error occur: 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine error.
any idea?
Thanks
It's possible that the problem computers are either not 64-bit, or simply don't have the Provider installed (it's not installed on a computer by default). Because your app has been developed with the x64 provider (and you have specified "AnyCPU"), there will be problems running on an x86 machine (which won't the x64 provider).
Microsoft recommends sticking with the 32-bit version of Access when possible, possibly for this reason.
If those problem computers *are* 32-bit, they may be able to install the 32-bit provider to solve the problem.
This link is the download for 32-bit ACE.OLEDB.12.0 (which is for Access 2007) :
https://www.microsoft.com/en-us/download/details.aspx?id=23734This link is also ACE.OLEDB.12.0 (for Access 2010). The only difference I see in this second link is that there is also a x64 download in addition to the x86. What I don't know is whether or not the x86 version is the same as in the link above for Access 2007. The stuff that is written in the Details on this page make it sound like it'll work for older *and* recent versions of Access.
https://www.microsoft.com/en-us/download/details.aspx?id=13255
这篇关于Microsoft.ACE.OLEDB.12.0提供程序未在本地计算机上注册错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!