Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   !!Error a desconectarme de Firebirds!! (https://www.clubdelphi.com/foros/showthread.php?t=7695)

acertij022 24-02-2004 14:59:42

!!Error a desconectarme de Firebirds!!
 
Hola Foro creo que mi pedido de ayuda va en esta parte del foro ,mi problema es el siguiente:
Tengo una aplicación que se conecta a una base de datos remota atraves de Firebird(1.0.3.972) que funciona correctamente pero al desconectar el cable de red me tira el siguiente error:

Unable to complete networh request to host "192.168.0.2".
Error reading data from the connection.
unknown Win32 error 10054

y al tratar de salir de la aplicación me da el siguiente error:

Dataset open

para conectarme a la base utilizo:TIBDatabase, TIBTransaction, TDataSource, TIBUpdateSQL, TIBQuery, TIBDataSet
ya intente de desconectarlos a todos los comonentes que mencione pero sigue tirando los errores que mensione y no me cierra la aplicacion utilizo application.terminate ,otro dato ni haciendo Ctrl+Alt+Supr lo puedo cerrar a la aplicación.
Uso Delphi6 Enterprise con windows 2000.
¿Que estoy haciendo mal?, ¿que debo hacer para que por lo menos me deje cerrar la aplicación?
Espero anciosamente sus respuestas, de antemano muchas gracias

guillotmarc 24-02-2004 15:59:23

Hola.

Prueba a hacer un Close del TIBDatabase antes de desconectar el cable de red.

Saludos.

acertij022 24-02-2004 19:14:30

Cita:

Empezado por guillotmarc
Hola.

Prueba a hacer un Close del TIBDatabase antes de desconectar el cable de red.

Saludos.

Entiendo lo que me decis , pero el tema es que no se como detectar cuando ya no se encuentra conectado el clable de la red o esta fuera de la red para cerrar el TIBDatabase :(

gendelphi 26-02-2004 06:43:15

Prueba capturando las excepciones que ocurren en tu aplicación, esto lo haces asi:

Define en la seccion private de tu formulario principal la siguiente funcion:

procedure AppException(Sender: TObject; E: Exception);

Luego en el evento OnCreate de tu formulario principal:

Application.OnException:=AppException;

Y por ultimo implementas la funcion, para que trate a la exception generada, no tengo a la mano el nombre de la excepcion que se genera, pero no creo que sea dificil averiguarlo.

procedure TFormMainMenu.AppException(Sender: TObject; E: Exception);
begin
//Checar que tipo de excepcion es, y hacer alguna accion
end;


La franja horaria es GMT +2. Ahora son las 02:35:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi