ADO登陆界面,求救!(50分)

  • 主题发起人 主题发起人 bace
  • 开始时间 开始时间
B

bace

Unregistered / Unconfirmed
GUEST, unregistred user!
我用delphi做个软件的登陆界面
要求连接到sqlserver,怎样实现如下功能:
如果网络不通,给出提示,而不是(程序没有响应)
 
try
adoconnection.open
except
.........
end
 
同意楼上! EXCEPT可以通过BDE的错误代码进行一下判断
 
不行吧,我试了一下
结果。。。。
 
重新建過一個數據源﹗你的bde有沒有問題啊?
 
最好首先檢測有沒有一個*.ini的文件,里面放的就是ado的連接字符?
如果沒有文件則跳出那個連接窗口讓手動連接,
如果有就講出文件連接字符連接, 也可以直接打開*.ini文件編輯,很方便
 
事实上,我要做的软件是连接到网络sqlserver服务器
而且,要求软件放在任何机器上都能顺利连接
所以不能用到数据源
我用adoquery连接到sqlserver
问题是:在连接的过程中(adoquery.open),怎样判断该ip地址上
有相应的sqlserver和需要的数据库,并及时返回错误信息
以免程序停止响应呢?
谢谢
 
ADOConn.Connected := False;
LB_Inf.Caption := '正在连接数据库....';
Application.ProcessMessages;
try
//根据ini文件里的连接字符串连接数据库
AppINI := TIniFile.Create(ExtractFilePath(Application.ExeName) +
'AppSys/AppSys.ini');
//解密读入的字符串
ConnStr := AppINI.ReadString('Conn', 'ConnStr', '');
ConnStr := CryptStr(ConnStr);
ADOConn.ConnectionString := ConnStr;
AppINI.Free;
except
AppINI.Free;
Application.MessageBox('未找到配置文件,程序无法启动。', '启动错误', MB_Ok +
Mb_IconInformation);
Close;
end;
try
ADOConn.Connected := True;
except//连接
on E: Exception do
begin
Application.MessageBox(PChar('无法连接数据库,系统返回的错误信息如下:' +
#13 + #13 + E.Message), '连接失败', Mb_OK + Mb_IconInformation);
Close;
end;
end;
 
接受答案了.
 
后退
顶部