客户端所有控件在一个窗体中,用下面的代码判断SQLConnection1是否连接没有问题问题,如果把SQLConnection1放在data模块中,再用函数来调用,try好像就没法拦截到出错了。正确的:
try
  SQLConnection1.Params.Values['HostName']:=Edit2.Text;
  SQLConnection1.Params.Values['Port']:=Edit1.Text;
  SQLConnection1.Connected:=True;
Except
  showMessage('连接失败!');
end;报错的(如果连接服务端不成功会直接报内存错误,try无法拦截。):
try
  dtm.SQLConnection1.Params.Values['HostName']:=iniConip;
  dtm.SQLConnection1.Params.Values['Port']:=iniPort;
  dtm.SQLConnection1.Connected:=True;
Except
showMessage('连接失败!');
End;