Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Erreur 10049 sur socket UDP [ Archives / Au secours ] (Ezekiel69)

samedi 10 janvier 2004 à 13:50:33 | Erreur 10049 sur socket UDP

Ezekiel69

Salut tous le monde...

Me voici depuis plusieurs jour confronté un a problème étrange.
Je veux envoyer un message par l'intermédiaire d'un packet UDP sur un serveur. Mais après le 'bind' je me retrouve avec une erreur 10049 (Cannot assign requested address.). On gros d'après ce que j'ai compris l'adresse IP n'existe pas. Sachant que je peux contacter le serveur avec d'autre programme VNC et que le port concerné est ouvert c'est étrange. Mais quand je met mon adresse IP locale là ca fonctionne. J'ai vérifié des dixaines de fois mon code et je ne vois pas d'erreur.

Si je ne tient pas compte du résultat de bind/je supprime l'appel a la fonction
-> Autre erreur : 10054 (Connection reset by peer.)

Quelqu'un a t'il une idée ?

Voici le bout de code incriminé
________________________________________________

WSADATA wsa;
SOCKET sock;
SOCKADDR_IN sin;
char buffer[255];
CString QueryStr = "TEST";
CString IP = "213.20.56.85";
int Port = 1000;
WSAStartup(MAKEWORD(2,0),&wsa);
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = inet_addr(IP);
sin.sin_port = htons(Port);

sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); // On déclare le socket a Windows
if(sock != INVALID_SOCKET)
{
if(bind(sock, (SOCKADDR*)&sin, sizeof(sin)) != SOCKET_ERROR) // On le lie aux propriétés définies plus haut
{
if(sendto(sock, QueryStr, QueryStr.GetLength(), 0, (SOCKADDR*)&sin, sizeof(sin)) != SOCKET_ERROR)
{
int sinsize = sizeof(sin);
if(recvfrom(sock, buffer, sizeof(buffer), 0, (SOCKADDR*)&sin, &sinsize) != SOCKET_ERROR)
{
// J'envoie vers une fonction qui traite le message
} else {
GetSocketError(); // C'est une fonction qui m'affiche le code SOCKET_ERROR et une description
}
} else {
GetSocketError();
}
} else {
GetSocketError();
}
} else {
GetSocketError();
}

________________________________________________

Merci d'avance pour votre aide :)

samedi 10 janvier 2004 à 14:58:23 | Re : Erreur 10049 sur socket UDP

aardman

Membre Club
Salut,
Pas besoin de binder ton socket lorsque c'est toi qui établi la connexion (TCP) ou lorsque c'est toi qui envoie un packet en 1er (UDP).
De plus on binde avec une adresse locale(la tienne) et non distance.

dimanche 15 février 2004 à 19:50:30 | Re : Erreur 10049 sur socket UDP

domi91


J'ai aussi la même erreur depuis hier, sur un programme delphi qui fonctionnait depuis plus d'un an sans aucun problème. (station W2000 pro vers W2000 serveur).
La seule chose que j'ai effectuée depuis hier ce sont Updates automatique proposés par Microsoft.
La cause vient surement de là ???



Cette discussion est classé dans : erreur, socket, sin, sock, udp


Répondre à ce message

Sujets en rapport avec ce message

erreur 10038 [ par made_in_france ] Hello ! j'ai un probleme avec la fonction bind de mon programme. En effet cette fonction me renvois l'erreur 10038 « attempted ». Est ce que quelqu'un Pb de socket 'winsock2.h' [ par amodels ] Bonjour tlm.Je voudrais éxécuter l'adresse http://127.0.0.1/toto.php avec ce code :#include #include #pragma comment(lib, "ws2_32.lib")void main(){WS Documentation Reseaux [ par SnowBlade360 ] Bonjour J'ai trouver sur inernet du code afin de crée une socket mais j'aimerais connaitre exactement tout les champs qui la compose voici mon code : Probleme de socket (envoi) [ par SnOOpss ] Salut !!!Voila g realisé nn programme pour m'envoyer des socket a moi meme ( c pr tester) *********Client******** #include #pragma comment(lib, "ws2_3 problème socket sous windows [ par kod32 ] Voici mon code : (winsock2.h)-----------------------------int main(){ /* inialisation */ WSADATA wsa; WSAStartup(MAKEWORD(2,0), &wsa); /* CreateProcess sur socket [ par Stormy ] Je cherche un moyen d'associer une socket avec un CreateProcess afin de lancer un shell sur CMD. Malheureusement, je ne trouve pas de liens intéressan [serveur]telecharger fichier [ par lombredudragon ] Avec les socket je debute et j'aimerais me faire un serveur en c ou c++ ou kan on se connect au port 23 par telnet on recoit automatiquement un fichie Connection sur le serveur impossible [ par LordBob ] Bonjours a tous,voila j'ai fait un petit jeu, trois fois rien et cela fait un moment que j'essai d'y rajouté la fonction jouable sur internet... donc socket et serveur smtp [ par lombredudragon ] Voila j'aimerais savoir si c'est possible d'envoyer un mail de cette maniere:#include #pragma comment(lib, "ws2_32.lib") void main(){ WSADATA WSADat Problème de Socket(recv) [ par YnOThAr ] Voila je suis en train d'essayer de faire un client FTp mais j'ai vraiment du mal...mon preblème c ke j'arrive pas à réceptionner les réponses du serv


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Appels d'offres

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.