为了账号安全,请及时绑定邮箱和手机立即绑定

Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册

Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册

鸿蒙传说 2019-09-19 16:37:30
我在32位Windows 2008服务器中创建了一个在.NET 3.5中开发的Windows应用程序。在64位服务器中部署应用程序时,它显示错误“Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册”。因此,作为此问题的解决方案,我已将项目的构建属性更改为X86,以便它将以32位模式构建,并在32位机器中重建项目。但是,同一个项目使用其他数据库驱动程序(DB2,SQL等)连接到其他数据库。因此,当我在64位操作系统中再次部署我的应用程序时,它会抛出异常“尝试在32位平台上加载64位程序集”。我使用Microsoft.Jet.OLEDB.4.0驱动程序读取和写入Excel(.xls)
查看完整描述

3 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

我找到了解决这个问题的方法。我在问题中描述的问题基本上是由于64位操作系统中的Microsoft.Jet.OLEDB.4.0驱动程序不兼容。


因此,如果我们在64位服务器中使用Microsoft.Jet.OLEDB.4.0驱动程序,我们必须强制我们的应用程序以32位模式构建(这是我在广泛搜索此已知问题时找到的答案)这会导致我的代码的其他部分中断。


幸运的是,现在微软已经发布了64位兼容的2010 Office System Driver,可以替代传统的Microsoft.Jet.OLEDB.4.0驱动程序。它适用于32位和64位服务器。我已经将它用于Excel文件操作,它在这两种环境中都适用于我。但是这个驱动程序是在BETA中。


您可以从Microsoft Access数据库引擎2010可再发行组件下载此驱动程序


查看完整回答
反对 回复 2019-09-19
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

我也有同样的问题


Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册


我通过neo应用了答案但是在我将连接字符串中的提供程序更改为“Provider = Microsoft.ACE.OLEDB.12.0;”之后它才起作用。


如果有人面临同样的问题,希望这会有所帮助。


查看完整回答
反对 回复 2019-09-19
  • 3 回答
  • 0 关注
  • 1604 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信