Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [Delphi] IdTCPClient, connessione interrotta.

    Ho un problema serio.
    In un programma faccio uso del componente Indy 10 IdTCPClient per connettermi ad un server. Se la connessione si interrompe però

    non viene sollevata nessuna eccezione,
    IdTCPClient.Connected ritorna true,
    se faccio un IdTCPClient.IOHandler.Write() non succede nulla.

    Come posso fare per capire quando un terminale non è più raggiungibile?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,475
    Mi pare un po' strano che la richiesta prosegua senza alcuna segnalazione, visto che l'interlocutore via socket non può nemmeno essere raggiunto.

    Verificherei che non vi siano elementi che bloccano la generazione di eccezioni, ad esempio la presenza (anche in passato) di un componente TApplicationEvents.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Non c'è, il codice è molto semplice. Ti dirò che sto passando ai vecchi componenti TcpServer e TcpClient.
    Non riesco a trovare in alcun modo una via per risolvere il mio problema.

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,475
    Originariamente inviato da denis76
    Non c'è, il codice è molto semplice. Ti dirò che sto passando ai vecchi componenti TcpServer e TcpClient.
    Non riesco a trovare in alcun modo una via per risolvere il mio problema.
    Non saprei che cosa suggerirti, in quanto non l'ho mai riscontrato.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Normalmente scrivi applicazioni per la rete? Che componenti usi?

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,475
    Originariamente inviato da denis76
    Normalmente scrivi applicazioni per la rete? Che componenti usi?
    Uso gli Indy Components. Ho sviluppato un programma per la gestione e lo smistamento della posta elettronica, e sto realizzando un programma per l'upload/download di file su un server sicuro.

    In entrambi i casi, quando si riscontra un'interruzione, l'eccezione "Connection closed gracefully" viene sempre generata, e comunque è sempre possibile determinare se la connessione è ancora attiva, o tramite un'eccezione istantanea, oppure dal fatto che l'operazione in corso (bloccante) riconduce ad un "timeout", prima o poi.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.