访问Excel 2007出错,未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序
2011-03-24 00:52
375 查看
场景描述:
在windows 2008 r2 x64版本的操作系统中通过oledb提供程序连接访问Excel2007/2003时,程序会报如下错误:
System.InvalidOperationException: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
此查找资料认为产生此种错误的原因有两种:
1、在Windows2008r2 x64 OS,在没有装Office2007客户端时,或没有安装“数据连接组件”
2、当前Web应用程序的应用程序池是64位的Sharepoint应用程序池下时,因为提供连接Excel的provider不支持当前64版本的操作系统
解决方法:
1方案:
安装MS的数据连接组件AccessDatabaseEngine(或安装office 2007客户端),并将当前承载通过oledb提供程序去访问Excel2007的Web application对应的应用程序池“启用兼容32位应用程序”,
在对应的 IIS 应用程序池中,“设置应用程序池默认属性”右击/“高级设置”/"启用32位应用程序",设置为 true。
2方案:
安装AccessDatabaseEngine_64版并且要安装64位版的office 2010客户端
3方案:
若目标应用程序不能将应用程序池"启用兼容32位应用程序",只能在64位应用程序池下运行,且又想有上传Excel的功能,可按如下方式:
a、创建Asp.net WebService application 程序,并通过WebService来连接访问Excel。
b、将此webservice application的应用程序池按方案1方式设置“启用兼容32位应用程序”。
c、在目标应用程序中添加此webservice。
在windows 2008 r2 x64版本的操作系统中通过oledb提供程序连接访问Excel2007/2003时,程序会报如下错误:
System.InvalidOperationException: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
此查找资料认为产生此种错误的原因有两种:
1、在Windows2008r2 x64 OS,在没有装Office2007客户端时,或没有安装“数据连接组件”
2、当前Web应用程序的应用程序池是64位的Sharepoint应用程序池下时,因为提供连接Excel的provider不支持当前64版本的操作系统
解决方法:
1方案:
安装MS的数据连接组件AccessDatabaseEngine(或安装office 2007客户端),并将当前承载通过oledb提供程序去访问Excel2007的Web application对应的应用程序池“启用兼容32位应用程序”,
在对应的 IIS 应用程序池中,“设置应用程序池默认属性”右击/“高级设置”/"启用32位应用程序",设置为 true。
2方案:
安装AccessDatabaseEngine_64版并且要安装64位版的office 2010客户端
3方案:
若目标应用程序不能将应用程序池"启用兼容32位应用程序",只能在64位应用程序池下运行,且又想有上传Excel的功能,可按如下方式:
a、创建Asp.net WebService application 程序,并通过WebService来连接访问Excel。
b、将此webservice application的应用程序池按方案1方式设置“启用兼容32位应用程序”。
c、在目标应用程序中添加此webservice。
相关文章推荐
- EXCEL文件导入时报_未在本地计算机上注册Microsoft.ACE.OLEDB.12.0提供程序
- 从Excel中导入数据时,提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。
- 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法
- IIS下解析Excel文档“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”问题
- asp.net本地读取excel正确。但在iis服务器上就报错 未在本地计算机上注册“Microsoft.ACE.OleDb.12.0”提供程序
- 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法
- c#操作Excel时,抛出异常:“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”
- ASP.NET excel 导入数据库 出现 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序问题的解决
- 执行asp.net上传下载Excel时出现“未在本地计算机上注册“Microsoft.ACE.Oledb.12.0”提供程序。(System.Data)”错误
- 64位操作系统〖未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序〗或〖未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序〗
- 未在本地计算机上注册Microsoft.ACE.OLEDB.12.0提供程序
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序 解决方法
- 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法
- Excel批量导入数据库--提示未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序 解决方法
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序
- 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法