求教:我在XP系统下开发的程序在2000里不能运行(50)

  • 主题发起人 主题发起人 卖女孩的小火柴之二
  • 开始时间 开始时间

卖女孩的小火柴之二

Unregistered / Unconfirmed
GUEST, unregistred user!
哪位碰到过这个问题:我的系统是在XP下开发的,结果拷贝2000系统下就不能运行,提示找不到数据库,在XP系统下就没问题。数据库在2000的系统上。
 
数据库是是SQL2000数据库,SP4补丁已经打了,用IP地址访问的,在XP下没问题的。数据库在服务器上,服务器是2000的系统,在服务器上也不能用,提示找不到数据库。客户端电脑有的是2000的系统,有的是xp系统程序在2000系统下的电脑上不能用,在XP系统的电脑上可以用
 
最好在2000下重新编译一次~~
 
客户端有N个模块!一个一个的编译会死人的!
 
那就没办法了~~这是一个常见的问题~~
 
使用ADO连接的。//打开数据库连接function TDB.connect(): string;var str: String;begin str := 'Provider=SQLOLEDB.1;Persist Security Info=True;Network Address=' + uSession.GetParam('DB_SERVER_IP'); if StrToIntDef( uSession.GetParam('DB_SERVER_PORT'), 0 ) > 0 then str := str + ',' + uSession.GetParam('DB_SERVER_PORT'); str := str + ';Initial Catalog=' + uSession.GetParam('DB_SERVER_NAME') + ';User ID=' + uSession.GetParam('DB_SERVER_USER') + ';Password=' + uSession.GetParam('DB_SERVER_PASSWD'); //alert( str ); if Not Assigned( self.adoconnection ) then self.adoconnection := TADOconnection.Create(nil); self.adoconnection.ConnectionString := str; self.adoconnection.LoginPrompt := False; try self.adoconnection.Open(); except on e: Exception do begin Result := '数据库连接错误:' + e.Message; self.setError( Result ); alert( Result ); end; end; end;
 
如果客户端是2k workstation,缺省安装是ado 2.5,就有连接问题,只要安装ado2.6或2.8就可以了,这个包到处都有,很容易下载到,我以前项目中的一个解决方法:程序把这个包打包进去,然后判断ado版本,如果是低版本,则在连接前先安装高版本ado包但这样安装包大了很多,建议还是分开提供
 
好的我试试这个
 
就是数据库驱动的问题
 
提示: 数据库连接错误:[DBNETLIB][connectionOpen(Connect()).]SQL Server 不存在或者拒绝访问IP地址,用户名密码都是用INI文件配置的。
 
没人遇到并解决过这类问题吗?
 
xp可能是克隆的,重装系统.用原版一步一步安装试试
 
我用我的台式机安装了W2000,打了MDAC2.8的补丁之后就可以了,但是在客户的2000的机子上也装了最近的MDAC补丁,还是提示一样 提示: 数据库连接错误:[DBNETLIB][connectionOpen(Connect()).]SQL Server 不存在或者拒绝访问 都不知道是什么原因了!
 
XP的防火墙问题吧
 
我遇到过类似问题: 1.最好在windows2000 上安装delphi与sql server.进行调试,方可查出问题。比如说:你用到一些第三方控件,或者程序代码写法,(从提示上连接语句出错).
 
在WIN2K编译下即可。我也遇到同样的问题
 
首先使用sql客户端测试网络连接,保证和server的连接正常,排除网络问题后,再来测试你的程序
 
你没有安装Win2000下的SQLServer200链接工具啊,运行SQLServer200安装包-->...-->"仅仅连接"即可!
 
在2000的机子上安装了SQL2000数据库啊,别的XP的机子访问没问题,就是自己不能访问自己!回头再好好试试看把~
 
你把XP的内置防火墙关掉试试看
 
后退
顶部