Salve.. ormai è l'ennesima richiesta che faccio.. alka prima o poi passerà a chiedere il conto :P
In un'applicazione client-server che sto sviluppando (sempre la stessa) utilizzo i clientsocket ed i serversocket del componente "Internet" (delphi 6).
Ho sviluppato tutto il sistema che funziona correttamente.
C'è però un'eccezione che non riesco a gestire:
generalmente quando un client si chiude normalmente gli faccio settare il clientsocket.active a false, in modo che il server riceva il trigger intercettato dall'evento 'onclientdisconnect'.
Capita però che la disconnessione avvenga in modo "non naturale" (ad esempio chiudendo l'applicazione dal taskmanager o spegnendo windows senza chiudere l'applicazione).
In questo caso il server fa appire un messaggio d'errore "Asynchronous socket error: 10053" che di per sè non crea problemi. Quando però il server deve riscrivere su un qualsiasi socket si incricca.
In che modo posso intercettare la chiusura inaspettata del client per far sì che il server la gestisca meglio?