MFC ado 连接sql server提示未知错误

来源:互联网 发布:热血战歌龙心升级数据 编辑:程序博客网 时间:2024/05/21 11:04

代码跟进去,发现CreateInstance返回值是空的。

找了下原因:


首先,环境如下:

开发机:win7   msado15.dll的版本:6.1.7601.17514
测试机1:xp    msado15.dll的版本:2.81.3007.0
测试机2:xp    msado15.dll的版本:2.81.3012.0

开发时用
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF") 
引入ado,在 测试机1 上连接不上数据库,提示未知错误。在 测试机2 上可以正常连接数据库。
可以确定是ado版本的问题。
我用#import "msado15.dll" no_namespace rename("EOF","adoEOF") 引入ado,将   2.81.3007.0 版本的 ado拷贝到工程下面,编译出的可执行程序在 测试机1 和测试机2上都能正常运行。又试了一个win2000系统,具体的ado版本忘了,比2.81.3007.0早,也能正常运行。如果将2.81.3012.0版本的ado拷贝到工程目录下,则在测试机2能正常运行,测试机1上不能正常运行。

目前就只能用#import "msado15.dll" no_namespace rename("EOF","adoEOF") 引入ado,然后将 2.81.3007.0 版本的ado拷贝到工程目录下面了,至少这样做可执行程序都能正常运行。


不清楚微软是怎么维护的,可能中间某个版本突然不兼容了。

0 0
原创粉丝点击