未在本地计算机上注册"Microsoft.Jet.OLEDB.4.0"提供程序的解决方法(附mdac2.8下载)

所属分类: 电脑基础 / 故障排除 阅读数: 177
收藏 0 赞 0 分享
简单的程序代码如下:


复制代码
代码如下:

DataSet ds=new DataSet();
try
{
string strCon = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/test.xls;Extended Properties='Excel
8.0;HDR=YES;IMEX=1'";
OleDbConnection oleCon = new OleDbConnection(strCon);
oleCon.Open();
OleDbDataAdapter oleDA = new OleDbDataAdapter("select * from [sheet$]", oleCon);
oleDA.Fill(ds);

catch (Exception ex)
{
MessageBox.Show(ex.Message + ex.Source + ex.InnerException);
}


报错:未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。System.Data

需要注意的问题和解决方法:
1.Microsoft.Jet.OLEDB.4.0不要写成Miscrosoft.Jet.OLEDB.4.0,;
2.Data Source不要写成“Data Sourse”,
3.检查是否安装了Office
4.重新安装注册MDAC28.exe (一般你的vs安装目录里有或者到微软的官方网站上下)
https://www.jb51.net/softs/20587.html
5.如果是64位平台,也可能出现这种情况;解决方法:生成->配置管理器->平台->点击Any Cpu选项卡->新建->新建平台->X86
(我的就是这个问题)

win2003 安装mdac2.8 sp1 方法如下(具体分析再后面):

右击MDAC安装文件(Microsoft Data Access Components(MDAC) v2.8 SP1 :
属性-->兼容性-->用兼容模式运行这个程序(打上勾)-->选择winnt4.0(service pack 5)-->确定

再运行改可以正常安装,问题解决。

解决winxp sp2及win2003无法安装MDAC导致ADO无法修复的问题!!

ADO损坏,但在WinXP SP2和Win2003上运行MDAC 2.8,会出现如下的错误:
MDAC 2.8 RTM 与此版本 Windows 不兼容。现在它的所有功能都成为 Windows 的一部分
MDAC组件,在Windows XP SP2以后的版本及Windows 2003中已经包含了这个组件,如果直接使用MDAC_TYP.EXE可能会无法安装,这时需要采用下面的方法。

解决!在安装了XP sp2或Windows 2003的机器上修复MDAC的方法如下:

在“我的电脑”中找到Windows系统目录下INF文件夹中的MDAC.INF文件,在其上点击右键,在弹出的菜单中选择“安装”,当提示定位文件时,您可以先将其指向windows\servicepackfiles\i386,当需要XP的CD时,指向XP的安装盘上的\i386文件夹即可。(如果您的XP安装包中包括了SP2,您可以直接指向XP的安装盘上的i386文件夹就可以了。如果您的SP2是从网上升级的,可能需要先指向C:\windows\servicepackfiles\i386文件夹,此处假定您的XP安装在C:\windows文件夹下)。
将上述两个组件下载安装后,估计您的数据库问题就会解决了。

mdac2.8在精简的xp的sp3版本中可能会遇到8008007f问题

access数据库的连接出现8008007f问题,有可能是系统精简的问题(或者mdac版本问题),网上说是重装mdac可解决,
找了半天,最后怎么解决的说不完整了,因为装了好多次的dll和各个文件夹,c:\window\system32\,c:\windows\system32\dllcache\,c:\program files\common files\odbc\,c:\program files\common files\oledb\,c:\program files\ado\;
不过,装这些东西时,要注意版本,关于本机mdac版本的检测:
http://www.microsoft.com/downloads/details.aspx?FamilyId=8F0A8DF6-4A21-4B43-BF53-14332EF092C9&displaylang=en
或者到这个地址下载
http://www.microsoft.com/zh-cn/download/details.aspx?id=5072
更多精彩内容其他人还在看

打印机端口改不了怎么办详细解决方案

驱动程序安装完整后,将打印机重新连到服务器端。在客户端电脑上配置打印机端口。客户端安装打印机后,创建的本地端口是 “USB001” 。需要把打印机端口改成网络端口,下面与大家分享下具体的修改方法
收藏 0 赞 0 分享

64位系统不能玩英雄联盟的解决方法

因为很多人玩的游戏是针对32位系统的,所以游戏内的DirectX9插件安装不正确,所以才会提示出错,比如提示:缺少d3dx9_43.dll
收藏 0 赞 0 分享

电脑开机出现Invalid partition table错误解决方法

Invalid Partition Table 就是无效分区表,一般是由于电脑中毒或硬盘分区表有问题造成的,一般通过重写硬盘分区表
收藏 0 赞 0 分享

因动态磁盘引起的系统无法引导解决方法

因为VMVare本身的虚拟技术和Windows Phone模拟器相冲突,从而使得在Visual Sutodio Express For Windows Phone 中的调试时,连接模拟器出错,找到解决资料后与大家分享
收藏 0 赞 0 分享

Mac下SSH登录不上提示错误的解决方法

登录虚拟机的的linux时,提示未知错误: REMOTE HOST IDENTIFICATION HAS CHANGED,经搜索找到了解决方法,有类似问题的朋友可以参考下哈
收藏 0 赞 0 分享

host 不起作用问题的解决方法

由于某种需要,需要将域名指向指定的ip地址,平时挺好用,今天发现不能用了,注册表,host文件也修改了都不能用,经过排查,原来是host中的文件顺写反了
收藏 0 赞 0 分享

为什么电脑空闲时(隔一段时间)ADSL就自动频繁断线

只要我一直玩《英雄联盟》 《穿越火线》或者不停地上网一切正常,但只要不碰电脑,隔一段时间后ADSL就会自动断线,下面与大家分享下造成此原因的具体解决方法
收藏 0 赞 0 分享

USB设备运行不正常怎么回事具体判断方法

面对越来越多的USB设备,电脑总会给大家出点小难题,比如说USB设备运行不正常了,下面与大家分享下具体的判断方法,感兴趣的朋友可以了解下哈
收藏 0 赞 0 分享

电脑语言栏不见了(输入法)丢失怎么办(多种找回方法)

语言栏(输入法)丢失问题可能是你自己误删除,也可能是广告木马,输入法图标不见了的现象。必须进行修复才能解决这个问题,具体的修复方法如下,有类似问题的朋友可以参考下哈
收藏 0 赞 0 分享

ThinkPad X100e不显示问题通过焊北桥解决

一个ThinkPad X100e,故障就是什么也不显示,经过一番折腾,根据之前学过的知识,焊北桥,开机以后居然正常显示了,特与大家分享
收藏 0 赞 0 分享
查看更多