Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Verificare la connessione a internet
Forum - C/C++ - Verificare la connessione a internet

Avatar
jaco94++ (Normal User)
Expert


Messaggi: 203
Iscritto: 22/10/2008

Segnala al moderatore
Postato alle 22:13
Domenica, 14/08/2011
Avrei bisogno di sapere se è possibile verificare se il computer è connesso ad internet o alla rete locale su linux, su internet non ho trovato una soluzione al mio problema o per lo meno non su linux solo su windows ho visto una funzione che verifica se il computer è connesso su linux come posso fare ?

PM
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Up
0
Down
V
Segnala al moderatore
Postato alle 22:26
Domenica, 14/08/2011
Non mi pare esista un'API che ti dica se il computer e' connesso ad una rete. Potresti provare ad eseguire ifconfig e parsare il suo output. Ma forse sarebbe meglio se ci spieghi cosa vuoi fare esattamente.

In sostanza vorrei che nel caso il computer che esegue il mio programma non è connesso ad una rete semplicemente restituisca un messaggio di errore... tipo ping su linux che nel caso non si è connessi restituisce un messaggio con scritto che non si è connessi ad alcuna rete . - jaco94++ - 14/08/11 22:33
Metti la parte di codice che interagisce con la rete in un try catch... - pierotofy - 15/08/11 05:13
Non funziona ho messo tutta la parte del codice che si collega alla rete in un try catch ma niente! Se faccio una funzione che invia in broadcasting un pacchetto icmp e se mi ritorna indietro anche solo 1 pacchetto sono connesso altrimenti no funzionerebbe? - jaco94++ - 16/08/11 20:03
Ma in che senso niente? Apri un altro topic e vediamo il codice... probabilmente stai facendo qualcosa di sbagliato. - pierotofy - 16/08/11 21:27
Il codice c'è gia nel topic c++ linux socket che mi è stato chiuso per l'argomento, ovviamente ora il codice è corretto. In ogni casi prima di eseguire quel codice li vorrei verificare se sono connesso ad una rete o no quindi ho messo quel codice in un try e cath ma niente veniva eseguito sempre! - jaco94++ - 16/08/11 22:38


Il mio blog: https://piero.dev
PM
Avatar
Goblin (Member)
Expert


Messaggi: 375
Iscritto: 02/02/2011

Up
-1
Down
V
Segnala al moderatore
Postato alle 22:37
Domenica, 14/08/2011
mmm forse è un po' obsoleta (WinInet.dll) ...
http://msdn.microsoft.com/en-us/library/aa385483%28v=vs.85 ...
Io per comodità per testare se sono "on line" faccio il ping su 3 server (ibm, oracle e google) .. se ne cicco 2 vuol dire che non sono "on line". E' un po' empirico, ma abbastanza pratico :)
Certo dentro un dominio o una intranet devi avere almeno il nome del PrimaryDomain per vedere se sei dentro, ma poi ci entrano in gioco molte altre limitazioni...
G.

Ultima modifica effettuata da Goblin il 14/08/2011 alle 22:39
Si parla di linux, non win32. - pierotofy - 15/08/11 05:12


Ibis redibis non morieris in bello
PM