Microsoft.Jet.OLEDB.4.0提供程序未注册

问题描述:

您好我在上传filetype .xls时遇到这样的问题“excel文件中出现错误:'Microsoft.Jet.OLEDB.4.0'提供程序未在本地注册机。”Microsoft.Jet.OLEDB.4.0提供程序未注册

我使用以下系统版本:

  1. 64位操作系统(Windows 7)。
  2. 其中我已附加屏幕截图的32位Office。
  3. 在C#中尝试使用.aspx页面。

我曾尝试以下:

  1. 下载Microsoft.Jet.OLEDB.4.0的32位和64位从 http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13255

  2. 尝试IIS编辑应用程序池>高级设置>启用32位应用程序:True。

但是他们两个都不适合我。难道有人有想法吗?

containt图像mentiontioned在这里:

的Microsoft Office Professional Plus 2010的

版本:14.0.4760.1000(32位)

+0

上传xls文件时出现错误是什么意思? –

您需要安装Microsoft Access Database Engine Redistributable您(目标)机器和连接字符串应该相应地改变。

请参考以下链接:

http://blogs.msdn.com/b/farukcelik/archive/2010/06/04/accessing-excel-files-on-a-x64-machine.aspx

http://www.microsoft.com/download/en/details.aspx?id=13255

希望这有助于...

OLEDB没有任何64位驱动程序(其烦人,我知道),和32位驱动程序与64位操作系统不兼容AFAIK

http://social.msdn.microsoft.com/Forums/en-GB/netfx64bit/thread/d2d33cfd-ed81-490a-906e-b9e29d572b59

编辑:你正在使用32位的办公室...应该与32位驱动程序一起工作。然后忽略这篇文章。

如果您安装的是Office 32位,那么您需要在机器上安装Access数据库引擎2010 64位,但安装它时有一个技巧。看到这里关于'被动'的论点:Microsoft Access Database Engine 2010 Redistributable

+0

感谢Simon Mourier,我尝试了你的建议,并为我工作。 – prashiddha

+0

真的非常感谢所有人但是我没有时间去尝试除Simon Mourier之外的所有建议。 – prashiddha

+1

@prashiddha你应该接受这个答案 - 点击复选标记。 – phoog

默认情况下,一个.NET程序被编译为任何在运行时转换为64位的CPU。对于64位,默认情况下没有安装驱动程序。

一个常见的解决方案是显式编译x86,以便程序使用32位OLEDB。