当前位置:数据库 > Excel >>

C++已实现将sql数据库数据导入excel中,现在需做改进。

因为用到office自带的excel类型库,因此,需要知道类型库的位置。 问题一:现使用固定绝对路径,如何避免固定路径,能自动找到excel类型库的位置。 问题二:office版本为2007,如何能兼容更多版本。 希望大家不吝赐教,感激不尽。
追问:我是采用直接引用类库的办法,对于您说的方法还不是很了解。不知您是否有例程供参考,或者可以留个联系方式不吝赐教?首先感谢你的回答,因为我要做成,别人拿去也能用的东西,因此第一个问题解决方案还不是最优的。
答案:你的二个问题,实际上是一个问题:如何创建与版本无关的excel对象。
excel对象是COM/DOCM组件,估计你是在编译时直接引用它的类库,其实你可以通过excel的可创建对象的ProgID引用它,就是你用”ProgID“代替”绝对路径“,因为对COM/DCOM对象,系统都可以通过”ProgID“找到它的(这就是所谓的组件注册的作用),ProgID里可以带个版本号,也可以不带版本号,不带版本号就是使用当前缺省的版本,带个版本号就是使用特定的版本,使用特定的版本时,你机器必须确实存在此版本。要兼容更多版本,你必须使用不带版本号的ProgID,只要你没有使用高版本的接口,你就能兼容多版本运行。
其他:1.提供几个备选路径,这个路径找不到就找另外一个,或者用配置文件,把excel库的路径写进去,让程序读取。
2.调用2003的库啊,先用07的,有异常就用03的。 

上一个:有没有像操作excel这样操作远程sql sever的工具
下一个:SQL SERVER 2000中,将EXCELl表导入到数据库A表中,EXCEL表中B列为text类型,导入到A表中后列B为float类型

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,