Ragazzi vi posto qui il mio codice fatto fino ora...so bene che i programmatori avranno qualche convulsione ma considerate che è la seconda volta che uso Delphi e la prima volta che lo uso per la rete
Ho aperto una nuova applicazione e l'unico oggetto che ho trascinato nella form è stato TIdTCPClient
Nell'Object Inspector ho potuto settare l''host del server e la porta e per semplicità ho cambiato nome all'oggetto in TCP.
Facendo doppio click sull'oggetto nella form mi si apre il codice e ha appena creato una procedure assiociata al doppio click: procedure TForm1.TCPConnected(Sender: TObject);
qui ho inserito questo codice
begin

if (TCP.Connected=false) then
begin
repeat
sleep(5000);
TCP.Connect();
until TCP.Connected=true;
end
else
begin
sleep(5000);
TCP.Disconnect;
end;
end;

Andando poi negli events dell'Obj Insp ho associato TCPConnected sia all'evento OnConnect che all'evento OnDisconnect...l'ho asiocato anche all'evento OnActivate della Form1.
Ora, il mio codice sarà sicuramente migliorabile per quello che devo fare, però funziona, il lato server (fatto in java ) mi comunica la connessione del client ogni 5 sec...Il mio problema ora è nel gestire le eccezioni se il client è scollegato dalla rete.
Infatti appena arrica a TCP.Connect() mi segnala EIdSocketError e blocca tutto...
Andando in giro per la rete ho trovato e provato a usare:
try ...except on EIdSocketError do continue;
Mettendo anche EIdSocketError = class(EIdSocketError) ma mi dice che non conosce EIdSocketError, credevo chefosse nella Uses SysUtils !!
Come faccio a dirgli di ignorare tutti gli errori quando non è connesso e di continuare a riprovare??
Grazie a tutti per la gentile disponibilità...