上传Excel遇‘Microsoft.ACE.OLEDB.12.0’未注册:安装引擎2010无效求助
解决“The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.”报错的额外方案
检查项目平台目标匹配
打开VS2017,右键项目→属性→生成→平台目标。如果你的系统是64位且安装的是64位Access Database Engine,就选x64;如果是32位引擎,选x86。新手常忽略的点:若选Any CPU,必须取消勾选“首选32位”,否则程序会以32位模式运行,和64位引擎产生位数冲突。修复Access Database Engine安装
打开控制面板→程序和功能,找到“Microsoft Access Database Engine 2010 Redistributable”,右键选择“更改”,再选“修复”。部分情况是安装时文件损坏或注册表项未完整写入,修复可解决这类问题。手动注册OLEDB驱动
以管理员身份打开命令提示符:- 64位系统+64位引擎,执行:
regsvr32 "C:\Program Files\Microsoft Office\Office14\ACEOLEDB.DLL" - 32位系统/64位系统装32位引擎,执行:
regsvr32 "C:\Program Files (x86)\Microsoft Office\Office14\ACEOLEDB.DLL"
执行后提示“DllRegisterServer in ACEOLEDB.DLL succeeded”即为注册成功。
- 64位系统+64位引擎,执行:
检查Office版本冲突
如果电脑上已安装32位Office套件(如Word、Excel),再装64位Access Database Engine会引发冲突,反之同理。此时需卸载其中一个,保持位数一致——要么卸载32位Office重装64位,要么卸载64位引擎换成32位版本。
内容的提问来源于stack exchange,提问作者Duna08
相关产品推荐
相关产品推荐

