【解决方法】未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法

原创 萧瑟  2018-01-04 21:34:56  阅读 507 次 评论 4 条
【解决方法】未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法第1张-萧瑟云资讯

最近公司的一个Winform项目,数据库用的是accdb,项目运行后,一直报错;内容:错误信息:未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。所以就找一下解决方案,顺便做个记录!

错误原因:

未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.InvalidOperationException: 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

解决方法:

下载2007 Office system 驱动程序:数据连接组件安装

官方下载

此下载将安装一组组件,非 Microsoft Office 应用程序可以使用它们从 2007 Office system 文件中读取数据,

例如从 Microsoft Office Access 2007(mdb 和 accdb)文件以及 Microsoft Office Excel 2007(xls、xlsx 和 xlsb)文件中读取数据。

这些组件还支持与 Microsoft Windows SharePoint Services 和文本文件建立连接。

此外,还会安装 ODBC 和 OLEDB 驱动程序,供应用程序开发人员在开发与 Office 文件格式连接的应用程序时使用。


使用此下载:

如果您是应用程序用户,请查阅应用程序文档以获得有关如何使用相应的驱动程序的详细信息。

如果您是使用 OLEDB 的应用程序开发人员,请将 ConnectionString 属性的 Provider 参数设置为“Microsoft.ACE.OLEDB.12.0”

如果要连接到 Microsoft Office Excel 数据,请将“Excel 12.0”添加到 OLEDB 连接字符串的扩展属性中。

如果您是使用 ODBC 连接到 Microsoft Office Access 数据的应用程序开发人员,

请将连接字符串设置为“Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=path to mdb/accdb file”

如果您是使用 ODBC 连接到 Microsoft Office Excel 数据的应用程序开发人员,

请将连接字符串设置为“Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=path to xls/xlsx/xlsm/xlsb file”

详情:http://www.microsoft.com/downloads/zh-cn/details.aspx?displaylang=zh-cn&FamilyID=7554f536-8c28-4598-9b72-ef94e038c891

或者:

解决办法1 (验证可以了)

  选择 该应用程序的 应用程序池 ------>选择高级设置 --------->启用32位应用程序 ------->true  

解决办法2

  Microsoft.ACE.OLEDB.12.0是不能再x64上使用的,你要强制把你的web application编译成x86再发布到Win08 x64上,记得在Application pool上设置Enable 32bit Application = true。

(没有验证)

本文地址:https://www.xsyrz.cn/error-microsoft-ACE-oledb-12.0.html
版权声明:本文为原创文章,版权归 萧瑟 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

评论列表

  1. 夏日博客
    夏日博客  @回复

    应用池用得地方好多。

  2. 懿古今
    懿古今  @回复

    只要能够解决的问题都不是问题,只有折腾了才能懂得更多,加油