cs_gaston06
Messages postés4Date d'inscriptionvendredi 8 décembre 2006StatutMembreDernière intervention26 janvier 2015
-
9 déc. 2006 à 11:26
cs_SoftMaker
Messages postés3Date d'inscriptionmardi 1 février 2005StatutMembreDernière intervention16 septembre 2008
-
28 janv. 2007 à 15:17
Bonjour,
J'ai 2 ordis en réseau. Je les ai fait communiquer en UDP avec le controle Winsock de VB5.
Etant débutant, j'ai fait plein de bêtises au départ, mais ça marche quand même très bien! Pourquoi?
1: je n'ai pas mis l'instruction Bind, et ça marche quand même!
2: j'ai changé un PC en oubliant de changer l'adresse IP dans l'autre, et ça marche encore!!
3: quand j'arrête un PC, et que l'autre essaye encore de communiquer,
il reçoit l'erreur 10054: "la connexion est rétablie coté distant". Non
seulement ce message dit le contraire de ce qui se passe, mais en plus
il me semble qu'en mode sans connexion on ne devrait même pas savoir ce
qui se passe à l'autre bout???
le cancre
Messages postés292Date d'inscriptionmercredi 25 octobre 2006StatutMembreDernière intervention27 novembre 2009 10 déc. 2006 à 01:31
salut gaston,
ton histoire est chelou!..
pour les erreurs , il faut voir du coté de icmp <- il est fait pour ca
sinon faut sniffer pour mieux comprendre la situation
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 11 déc. 2006 à 13:48
salut,
1: le bind est uniquement obligatoire côté serveur...côté client, windows sait bien trouver un port libre tout seul...
2: j'ai pas tout compris...mais rappel toi que UDP est un protocole non connecté...càd que chaque paquet est indépendant...
3: conseil : toujours chercher la définition ANGLAISE d'un code d'erreur : "la connexion est rétablie coté distant" en anglais ca se dit "connection reset by peer" autrement dit : "la connexion a été coupée côté distant"...
cs_gaston06
Messages postés4Date d'inscriptionvendredi 8 décembre 2006StatutMembreDernière intervention26 janvier 2015 11 déc. 2006 à 15:34
Merci, Cancre, merci ShareVB,
Concernant 1: je confirme que ça marche sans aucun Bind ni d'un coté ni de l'autre. Et d'ailleurs les messages sont échangés dans les deux sens.
Concernant 2: j'ai refait aussi l'essai: je mets dans le programe des adresses IP fausses et ça marche quand même!!!
Concernant 3, je me doutais que c'est une mauvaise traduc mais il reste
qu'en mode "sans connexion" je ne vois pas comment la connexion peut
être coupée, comment on peut le savoir, et pourquoi on le dit au client?
Pour moi ça reste mystérieux. Je vais essayer de sniffer...Et ICMP ça
se trouve où? dans le routeur ou dans le PC? dans le routeur je n'ai
rien vu avec le programme d'admin., mais je suspecte que c'est lui qui
fait du zèle.
cs_SoftMaker
Messages postés3Date d'inscriptionmardi 1 février 2005StatutMembreDernière intervention16 septembre 2008 28 janv. 2007 à 14:21
Salut,
Il existe un bug avec le contrôle winsock sous Windows 2000 ( pas sur 98 et NT) XP n'est pas spécifié mais j'ai le même problème sous XP.
Cause : Lorsqu'un paquet UDP est envoyé à un ordinateur distant et que celui-ci n'écoute pas le port spécifié, l'ICMP signale cela
comme une erreur "Impossible de joindre le port ICMP" laquelle se traduit par une erreur 10054 du contrôle Winsock lors de l'utilisation de GetData.
La solution donnée par Microsoft fait entrer mon soft dans une boucle sans fin avec perte de contrôle de VB5 mais je ne désespère pas.