c#操作Excel时,抛出异常:“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”

      我们开发环境下,使用excel导入数据到数据库中,编译的软件起初是x86 方式,起初并未发现什么问题,一切很正常;

 

程序该进的过程:

后来导入文件一次就要读取几百G的数据导入数据库中,使用编译的X86程序就不正常了,尽管我解析文件(.xml)方式从数据流改用XmlTextReader,但还是会跑出内存溢出(“System.OutofMemoryException”多么痛苦,悲剧,无奈呀),后来同事建议我将程序编译x64后问题真正的解决了(我们开发机时64G内存,呵呵。)

     程序改进后问题内存溢出问题解决了,但是就出现了:“未在本地计算机上注册"Microsoft.ACE.OLEDB.12.0”提供程序”;

     问题就出现在了我们安装的OFFice是X86,创建一个.udl文件,查看了数据库的链接属性后才知道,错误在这里,下载了AccessDatabaseEngine_X64.exe,安装时提示:“要求先卸载x86下office”,悲剧。

     代码:

    

posted @ 2014-11-05 19:03  cctext  阅读(1022)  评论(0编辑  收藏  举报