Club Delphi  
    FTP   CCD   Wiki   Enlaces   Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Desplegado
  #1  
Antiguo 26-01-2010
Rockin Rockin is offline
Registrado
 
Registrado: may 2003
Ubicación: Málaga
Posts: 189
Capturar ESocketError en la aplicacion

Buenas os escribo porque he buscado por todo lados y estoy un poco desesperado.

Os pongo en situación, tengo una aplicación en 3 capas usando datasnap con TSocketConnection.

Tengo 3 servidores de aplicaciones donde los clientes se conectan con balanceo de carga, el problema es que cuando tengo que cambiar algo en la capa intermedia tengo que tirar abajo un servidor y todos los clientes que tengo conectado a ese se caen. Quiero implementar una rutina de reconexión, algo parecido a lo siguiente:

Código Delphi [-]
procedure ReconexionBD();
var
        servidor1, servidor2, i: integer;
begin

            frmEjecuntado:= TfrmEjecuntado.Create(Self);
            frmEjecuntado.Label1.Caption:= 'Esperando reconexión con el Servidor...';
            frmEjecuntado.Label2.Caption:= 'Por favor espere';
            frmEjecuntado.Show;
            frmEjecuntado.Update;
            datDatosRemoto.ConexionSocket1.Address:= '192.168.232.200';
            datDatosRemoto.ConexionSocket1.Address:= '192.168.232.200';
            datDatosRemoto.ConexionSocket1.Connected:= True;
            datDatosRemoto.ConexionSocket2.Connected:= True;
            frmEjecuntado.Destroy;
            ShowMessage('Reconexión establecida con éxito');

end;

Aquí cambio a uno de los otros dos sevidores que están operativos, esto lo tengo listo.

El problema es que no se donde meter la excepción siguiente:

Código Delphi [-]
  try

  except

  on e:ESocketError do
  ReconexionBD();
  end;

Donde la ponga, no me captura la excepción y me sale el siguiente cartel:



No se donde poner la excepcion para que me la capture y me ejecute el procedimiento.

La he puesto en la desconexión del Socket, en el Application.Run del proyecto principal, en el CreateModule del Modulo remoto.

A ver si alguno tiene alguna idea.

Saludos y gracias de antemano.
Responder Con Cita
 


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
capturar una tecla en la aplicación 2-D@monic Varios 2 04-08-2008 20:01:26
Capturar imagen en una aplicacion Delphi 7.0 BuRtOn Gráficos 12 21-07-2008 22:34:32
Capturar evento de otra aplicación Wiarbumu API de Windows 2 06-07-2008 00:10:30
Capturar mensages de SQl en mi aplicacion Gedeon SQL 0 16-09-2006 23:05:24
problemas con ESocketError en delphi mflores Internet 7 26-12-2005 21:46:27


La franja horaria es GMT +2. Ahora son las 03:01:40.


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