最近需要利用 ADO 的方式访问 Excel,其间遇到的问题很多,且把问题和解决方法列在这里。
1 发现在连接时报 Provider cannot be found 错误
结果采用 x64 进行编译可以正确执行,才领悟到原来没有安装 32 位的相关驱动啊。
2 import msado15.dll 的位置问题
X64 平台下分成32位和64位两个版本。
64位:
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" no_namespace \
rename("EOF", "adoEOF") rename("BOF", "adoBOF")
32位:
#import "C:\Program Files (x86)\Common Files\System\ADO\msado15.dll" no_namespace \
rename("EOF", "adoEOF") rename("BOF", "adoBOF")
3 XLS 和 XLSX 新旧版本文件需要不同的连接字符串
XLS 对应的连接字符串: