Détecter une perte de connexion en TCP/IP (Winsock) [Résolu]

LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 25 janv. 2010 à 16:14 - Dernière réponse : LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention
- 27 janv. 2010 à 09:45
Bonjour,

Je développe une application client/serveur basé sur tcp/ip.
j'utilise la DLL WinSock.
Je voudrais savoir si il existe des fonctions afin de détecter une perte de la communication (ex: débranchement du câble réseau) ?
le seul moyen que j'ai de voir si il existe un problème mais sans pouvoir réellement en déterminer la cause est :
Nb_Caracteres_Recus=recv
(
Desc_Socket_Cliente,
Message_Recu,
sizeof(Message_Recu),
0
);
if(Nb_Caracteres_Recus<=0)
{				
Probleme=TRUE;
}


désirant améliorer mon programme, je voudrais savoir si des fonctions existent afin de mieux définir les erreurs réseaux possible...
merci!
 
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
cs_aardman 1905 Messages postés mercredi 22 janvier 2003Date d'inscription 17 septembre 2012 Dernière intervention - 25 janv. 2010 à 18:07
3
Merci
Salut,
si recv < 0, tu peux appeler WSAGetLastError() pour obtenir le numéro d'erreur.
recv == 0 signifie que la connexion a été fermée normalement.

Merci cs_aardman 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 120 internautes ce mois-ci

Commenter la réponse de cs_aardman
Meilleure réponse
cs_louis14 788 Messages postés mardi 8 juillet 2003Date d'inscription 8 mars 2017 Dernière intervention - 26 janv. 2010 à 12:45
3
Merci
J'avais trouvé ma réponse à cette adresse :
http://files.codes-sources.com/fichier.aspx?id=40728&f=Detecteur%5Cdetecteur.cpp

louis

Merci cs_louis14 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 120 internautes ce mois-ci

Commenter la réponse de cs_louis14
LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 25 janv. 2010 à 18:15
0
Merci
Ok, merci de ton aide.
je vais me renseigner sur cette fonction mais ça semble être aprfaitement ce que je cherchais...

sinon j'ai posté un autre problème , malheureusement toujours sans réponse donc si tu t'y connais bien en TCP/IP....

 
Commenter la réponse de LaTatadu91
cs_louis14 788 Messages postés mardi 8 juillet 2003Date d'inscription 8 mars 2017 Dernière intervention - 26 janv. 2010 à 09:27
0
Merci
Bonjour,
Si tu es sous windows, il y a des évènements qui permettent de savoir si le cable a été branché ou débranché. J'ai fait une application qui allait dans ce sens en utilisant des fonctions telles que "IsNetworkAlive" ou "ConnectionLost"


louis
Commenter la réponse de cs_louis14
LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 26 janv. 2010 à 10:56
0
Merci
Salut,

Oui je suis sous windows! tu as poster ton projet sur ce site?
merci,

 
Commenter la réponse de LaTatadu91
LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 26 janv. 2010 à 13:25
0
Merci
Génial merci!!!

 
Commenter la réponse de LaTatadu91
LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 26 janv. 2010 à 14:15
0
Merci
Sympa ce code source mais il est indiqué que ceci ne marche qu'avec une connexion à un modem et non pas dans le cas d'un réseau entre différents PC à l'aide d'un HUB.


 
Commenter la réponse de LaTatadu91
cs_louis14 788 Messages postés mardi 8 juillet 2003Date d'inscription 8 mars 2017 Dernière intervention - 27 janv. 2010 à 08:35
0
Merci
Je te rassure, j'utilise ce code et il me donne toute satisfaction.
Cela se résume à un message général qui correspond au message que l'on voit dans la barre de tâche " le cable réseau a été débranché".


louis
Commenter la réponse de cs_louis14
LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 27 janv. 2010 à 09:45
0
Merci
Ok, super! Merci encore pour le lien.

 
Commenter la réponse de LaTatadu91

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.