Socket VC++ détecter perte liaison

Fermé
Yul - 1 mars 2005 à 22:21
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 - 3 mars 2005 à 19:53
Salut,
J ai une appli avec serveur + client. Jusque là pour détecter une mauvaise connexion entre client et serveur j utilisais 2 méthodes:
1) si envoi d un message échoue : alors reinit de l'appli,
2) si pas de message recu apres x minutes, reinit l'appli.

des messages sont envoyés toutes les x sec.

Pb: si je retire le cable entre les 2 pc alors qu il communique j aimerais le detecter de suite, comment faire ?
(avec ma methode : mon client croit avoir reussi à transmettre son message alors que la liaison est coupée....pas terrible). Il lui faut qq secondes pour détecter cette coupure.
Le tout sur Visu C++

Merci pour toute aide ou lien ou mot clé.
Tchuss
A voir également:

3 réponses

tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
2 mars 2005 à 14:30
salut, tu n'as qu'a initialiser un thread qui lit en permanence le port pour détecter le debranchement.
0
aldo13 Messages postés 489 Date d'inscription lundi 24 janvier 2005 Statut Membre Dernière intervention 28 avril 2005 103
2 mars 2005 à 15:38
Salut ,

regarde du coté de WNetOpenEnum() .
0
salut
mon probleme est que je veux installer mon c++.c deja fait mais il ne compile pas et le message de l`erreur est ``unclude.h et conio.h non trouvable``
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
2 mars 2005 à 19:48
salut, d'abord lis ceci : http://www.commentcamarche.net/ccmguide/ccmcharte.php3

Ensuite, expliques mieux ce q tu ve dire, on y comprend rien (moi en tout cas j'y comprend rien).
Enfin, donnes ton systéme et l'environnement utilisé.
0
Yul > tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009
3 mars 2005 à 11:51
Salut et merci pour ton aide,

Au fait l'autre c est un mec qui s est trompé de forum.

Pour ceux que ca interesse y a l'API: IsNetworkAlive (voir la FAQ en Visual C++ dans la partie réseau sur http://www.developpez.net ). J ai pas encore pu tester.


Pour en revenir à ta solution: init d un thread surveillant le port. J'y connais rien, je vais voir ca sur google. Mais si t as un bout de code, c est pas de refus.

Merci
@+
0
Yul > tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009
3 mars 2005 à 12:20
Typiquement un problème que j ai:

Je retire le câble,
en faisant netstat -ap tcp la connexion client serveur reste ESTABLISHED pendant un temps trop important (plusieures dizaines de sec ). Ce temps est fonction de la durée de vie des packets sur le réseau....de ce que j'ai pu lire.

Pour WNetOpenEnum je regarde ca cet apres midi

Merci
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177 > Yul
3 mars 2005 à 19:53
salut, je n'y connais pas grd chose en api vc++ et c'est pourqoi je t'ai parlé de cette solution.
Pour mon dernier message, c'etait pour l'autre et pas pour twa.
tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
0