Il problema con tutti questi programmi è che 'internet' non esiste come entità. C'è un motivo per cui i tentativi di connessione falliti vengono segnalati come "irraggiungibili" o "non possono connettersi al server a blahblah". Esempi:
1) Non si ha segnale. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
2) Si dispone di un segnale, ma è stata superata la tolleranza dati del provider. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
3) La connessione del provider è soddisfacente, ma il router della dorsale è inattivo. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
4) La connessione del provider è soddisfacente, il loro router di dorsale è attivo ma il collegamento in fibra al paese X in cui si trova il server è stato interrotto da un capitano ubriaco e dall'ancora della sua nave. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
5) Tutti i collegamenti al paese di destinazione sono attivi, ma Fred, con il suo JCB che scava fossi, ha tagliato il cavo di alimentazione alla server farm. Uno degli altri lavori di Fred è di servire il generatore di backup :(Sei connesso a Internet? PING riuscirà? Puoi collegarti al tuo server di destinazione?
6) Tutto l'hardware è attivo, ma il codice del server è stato scritto da Fred prima che fosse degradato a scavare nel fosso per incompetenza e ora si è schiantato di nuovo. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
7) Fred ha avuto un giorno libero, ma il suo sostituto, l'amministratore del server competente ha bloccato il ping ICMP nei router per impedire attacchi di ping DOS. Sei connesso a Internet? PING riuscirà? Puoi connetterti al tuo server di destinazione?
Quindi, il modo migliore per essere sicuri è provare a connettersi al server di destinazione e vedere cosa succede.
È possibile rilevare alcuni casi negativi più rapidamente - sicuramente se non c'è segnale, non è possibile ottenere una connessione :) Oltre a questo, dovresti semplicemente provare a connetterti. Dì all'utente cosa sta succedendo, usa un timeout e fornisci all'utente un pulsante 'Annulla'. Questo è il meglio che puoi fare.
Significa che si utilizza anche la connessione WIFI. Ho ragione??? –
Sì, uso solo la connessione Wifi. –
Allora qual è il problema? –