Fórum EIdSocketError - Procedimentos a serem tomados na sua ocorrê #365717

31/10/2008

0

Olá,
Estou com problemas no entendimento da exceção EIdSocketError, como proceder na sua ocorrência, tanto no lado
da interface Server como no Client.

O Sistema é o seguinte: Existe uma central telefônica que envia informações para a minha interface (Server)
através da porta COM (1/2/...) na máquina onde está instalado o meu Server, este lê a informação enviada, manipula e
envia, via conexão TCP/IP a um determinado Client conectado. Atualmente existe na faixa de 7 Clients que ficam
conectados constantemente no Server.

De tempos em tempos ocorre esta exceção, EIdSocketError, pelo o que eu estudei, neste fórum e na web, um dos
motivos é a perda da conexão com o Client, nas primeiras versões do Server e Client, as aplicações não efetuavam o
devido tratamento e acarretava no final das contas o travamento e reinicio da aplicação, hoje já está mais estável,
mas ainda acredito que não apliquei a melhor solução, a solução atual é que na existência deste erro emito mensagem
para reiniciar a aplicação.

Na empresa onde está instalado este sistema, existem problemas na rede, que perde pacotes e o Windows perde a
conexão com a rede, isto já está sendo arrumado. O meu objetivo é na ocorrência desta exceção, que o Server e o Client
tratem com eficiência a exceção sem que travem ou necessitem reiniciar.

A minha experiência com este tipo de sistema, com comunicação TCP/IP é pequena, tudo o que eu sei foi estudando e
quebrando a cabeça para desenvolver, por isto a minha dificuldade de resolver este problema.

Dúvidas: Como tratar de forma correta esta exceção, além de usar o try/except?

Como utilizo uma versão antiga do Indy, significa que estou fazendo loucura em não atualizar para a versão 9.0.18, ou esta versão antiga é estável o suficiente para continuar com ela?

Informações técnicas:
1) Delphi 7;
2) TCP/IP: Indy 9(versão que acompanha o Delphi 7) - TIdTCPServer e TIdTCPClient;
3) Sistema Operacional: Windows XP - Service Pack 2

Desde já agradeço pela atenção e ajuda,

Att,

Fernando Ferri.


Fernando.ferri

Fernando.ferri

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar