brandolin
17-12-2005, 19:13:35
Hola foristas, estoy trabajando con DBExpres + Firebird 1.5 + D7 y lo que quiero hacer es una aplicacion que tiene dos bases de datos una local y otra remota (por lan o wan) y quiero poder controlar la existencia de la BD remota para eso cuando intento conectarme y pasa un determinado tiempo y no logro la conexion mando un aviso al operador. El problema es que no puedo manejar la excepcion de que no se conecta al servidor. Uso el siguiente codigo:
procedure TdmCentral.SQLConnRemBeforeConnect(Sender: TObject);
begin
try
vLocNombreINI := lowercase(Format('%s%s.ini', [ExtractFilePath( Application.ExeName ), _NombreSoftPosXamba]));
with SQLConnRem do
begin
Params.Values['Database'] := LeerINI( vLocNombreINI, 'Base de Datos', 'Nombre Remota', lowercase(ExtractFilePath( Application.ExeName )+'NodosDB1.fdb'));
Params.Values['User_Name'] := LeerINI(vLocNombreINI, 'Base de Datos', 'Usuario', 'sysdba');
Params.Values['Password'] := LeerINI(vLocNombreINI, 'Base de Datos', 'Password', 'masterkey');
end;
except
On E: Exception Do If (E Is EIBInterBaseError) Then
begin
ShowMessage(E.Message);
vConectada := False;
End Else
ShowMessage('Error desconocido');
end;
end;
Lo que no logro que se execute es el except siempre salta un cartel de que el archivo no existe y alli muere todo. ¿Alguna ayudita? Gracias
procedure TdmCentral.SQLConnRemBeforeConnect(Sender: TObject);
begin
try
vLocNombreINI := lowercase(Format('%s%s.ini', [ExtractFilePath( Application.ExeName ), _NombreSoftPosXamba]));
with SQLConnRem do
begin
Params.Values['Database'] := LeerINI( vLocNombreINI, 'Base de Datos', 'Nombre Remota', lowercase(ExtractFilePath( Application.ExeName )+'NodosDB1.fdb'));
Params.Values['User_Name'] := LeerINI(vLocNombreINI, 'Base de Datos', 'Usuario', 'sysdba');
Params.Values['Password'] := LeerINI(vLocNombreINI, 'Base de Datos', 'Password', 'masterkey');
end;
except
On E: Exception Do If (E Is EIBInterBaseError) Then
begin
ShowMessage(E.Message);
vConectada := False;
End Else
ShowMessage('Error desconocido');
end;
end;
Lo que no logro que se execute es el except siempre salta un cartel de que el archivo no existe y alli muere todo. ¿Alguna ayudita? Gracias