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

C# 未注册Microsoft.Jet.OLEDB.4.0提供程序,c#,file-upload,xls,oledbexception,C#,File Upload,Xls,Oledbexception,您好,我在上载filetype.xls时遇到类似问题“excel文件中出现错误:'Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册。” 我正在使用以下系统版本: 64位操作系统(Windows 7) 32位Office,其中我附带了屏幕截图 在C#中尝试这些.aspx页面 我尝试过以下方法: 从下载32位和64位的Microsoft.Jet.OLEDB.4.0 已尝试IIS编辑应用程序池>高级设置>启用32位应用程序:True 但他们两个都不为我工作。有人有想法吗?

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

我正在使用以下系统版本:

  • 64位操作系统(Windows 7)
  • 32位Office,其中我附带了屏幕截图
  • 在C#中尝试这些.aspx页面
  • 我尝试过以下方法:

  • 从下载32位和64位的Microsoft.Jet.OLEDB.4.0

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

  • 但他们两个都不为我工作。有人有想法吗?

    此处包含提及的图像:

    Microsoft Office Professional Plus 2010


    版本:14.0.4760.1000(32位)

    您需要在(目标)计算机中安装
    Microsoft Access数据库引擎可再发行
    ,并且应相应更改连接字符串

    请参阅以下链接:


    希望这有帮助……

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


    编辑:您正在使用32位office。。。这应该适用于32位驱动程序。请忽略此帖子。

    如果您安装了Office 32位,则需要在计算机上安装Access数据库引擎2010 64位,但安装它有一个技巧。有关“被动”参数,请参见此处:

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


    一种常见的解决方案是为x86显式编译,这样程序就使用32位OLEDB。

    上传xls文件时出错是什么意思?谢谢Simon Mourier,我尝试了你的建议,这对我很有效。真的感谢所有人,但我没有时间尝试所有的建议,除了Simon Mourier。哇,这让我疯狂了很长一段时间-终于找到了这个问题和我的问题!非常感谢您提供最终有效的解决方案。