Vérifier la connection et le ping

Résolu
Signaler
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009
-
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009
-
Voilà, je suis en train de terminer un programme client/serveur et je m'occuper actuellement de géréles erreur.

Mais problèmes sont :
1- Lorsque que je ne connect avec .Connect(EndPoint), si l'addresse n'est pas bonne il met beaucoup de temps a afficher une erreur. Je voudrais povoir faire un ping afin de vérifier la connection, est-ce que vous avez une idée ?

2- par ailleurs, si mon serveur se déconnecte, le programme client ne le sait pas et donc se bloque, il y a t il un moyen de tester la connection ?

> voilà (parmis tant d'autre) les questions que se pose un débutant.

Merci d'avance pour votre future aide,
[mailto:gomoz@free.fr Gomoz]
A voir également:

4 réponses

Messages postés
7
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
26 mars 2008

en cherchant une solution à min pb de timeout de connexion trop long,
je suis tombé sur ce mail. J'ai une solution, mais j'espèrais trouver
mieux.

Il faut faire un s.BeginConnect() sans s'occuper du restour de fonction
( et donc pas de endConnect()) puis faire une tempo ds une boucle (
pour ne pas attendre même si on est connecté ) en surveillant si on est
connecté. s.Connected.
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
Salut,

Pour ta première question, je vais me pencher dessus, j'aurais bien besoin de cette solution aussi.
En fait, il y a bien

 this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 1000);


Mais ca ne marche pas... :/

Pour la seconde question, du coté de mon serveur j'utilise un thread qui effectue toutes les X secondes ce controle :

if (s !null && s.Poll(5, SelectMode.SelectRead) && s.Available 0)

(s etant une instance de la classe Socket)

Ceci a pour effet de savoir quel client a été deconnecté "sauvagement" (plantage, etc).
Je pense donc que si tu implémente ceci du coté de ton client, il saura quand le serveur s'est fermé :)

Je te tiens au courant si je trouve une bonne solution a ta premiere question.

a++

MX
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

merci déjà pour la deusième option, sinon c'est daccord, lorsqu'il y a une solution de trouvé pour la 1, on s'en fait part ;)

[mailto:gomoz@free.fr Gomoz]
Messages postés
134
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
23 décembre 2009

en effet pas bete.

[mailto:gomoz@free.fr Gomoz]