Ver Mensaje Individual
  #1  
Antiguo 11-02-2005
Vultur Vultur is offline
Registrado
 
Registrado: feb 2005
Posts: 4
Reputación: 0
Vultur Va por buen camino
Re-conexion automatica de un cliente

Hola

Es mi primera participacion en este foro, asi que aprovecho pasa saludarlos a todos. He visto muy buena onda por aca ademas de muchos conocimiento...

Bueno, basta de alabanzas, mi problema es que estoy desarrollando una aplicacion cliente servidor usando los componentes TServerSocket y TClientSocket. Mi problema surje cuando quiero asegurarma que ante algun problema de el server no este online, el cliente intente conectarse repetidamente hasta lograrlo. En esto se me ocurren 2 situaciones, una que cuando el cliente se trata de conectar al server y este esta offline y la otra que estando conectado el cliente repentinamente el server queda offline

Para la primera puse esto, cumple con su objetivo

Código:
 //---------------------------------------------------------------------------
void __fastcall TMainForm::ClientSocket1Error(TObject *Sender,
	  TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
   if (ErrorCode == 10061 /*|| ErrorCode == 10053 */){
	 unsigned int inicial = GetTickCount();
	 unsigned int diferencia = inicial;
	 while (diferencia - inicial<500){
	  diferencia =  GetTickCount();
	 }
	 ErrorCode = 0;
	 ClientSocket1->Open();
   }
}
//---------------------------------------------------------------------------
Para la segunda opcion creia que el codigo de error era 10053, pero resulta que no me genera un codigo de error. Intente poner un ClientSocket1->Open() en el evento OnDisconnect() pero no funciona. Es decir intenta abrirlo desde ahi, pero al no lograrlo sigue de largo por asi decirlo. ¿Alguna idea de como hacerlo?

Saludos

Luis
Responder Con Cita