![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| High Level Programming Posez vos questions à propos de C, C + +, Java, SQL, et d'autres langages de programmation ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| problème avec prise de lecture | swap007 | UNIX for Advanced & Expert Users | 2 | 05-21-2008 02:08 AM |
| Keep-Alive HTTP socket problème | imdupeng | High Level Programming | 0 | 03-29-2008 09:11 PM |
| Nouer des liens avec les X-gagnant problème | dragunu | UNIX pour les nuls Questions et réponses | 2 | 02-27-2007 10:21 AM |
| Socket Problème | AgEnT007 | High Level Programming | 3 | 04-03-2004 09:15 PM |
| [Problème] Réutilisation port BSD socket | A savoir | High Level Programming | 1 | 11-28-2003 11:36 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Problème de connexion au Socket
Can anyone help? J'essaie d'écrire un programme qui va écrire sur un socket. Je peux obtenir le serveur pour exécuter, mais toujours un message d'erreur quand j'essaie de me connecter.
Il me donne une erreur lors de la "brancher" command. C'est probablement une simple erreur, mais je n'arrive pas à le trouver. # include <sys/socket.h> # include <netinet/in.h> # include <sys/types.h> # include <string.h> # include <stdio.h> # include <unistd.h> int main (int argc, char * argv []) ( int sortant, newSock, i; struct sockaddr_in triste; char buf; char action [255]; FILE * commande; if (argc <4) ( printf ( "Mauvais arguments de ligne de commande"); return 1; ) sortant \u003d socket (PF_INET, SOCK_STREAM, 0); if (sortie \u003d\u003d -1) ( printf ( "Impossible de créer le socket"); return 1; ) sad.sin_family \u003d AF_INET; sad.sin_port \u003d atoi (argv [2]); sad.sin_addr.s_addr \u003d inet_addr (argv [1]); if (connect (sortant, (struct sockaddr *) & triste, sizeof (struct sockaddr_in)) \u003d\u003d -1) ( printf ( "Impossible de se connecter à l'adresse% s port% s", argv [1], argv [2]); return 1; ) envoyer (sortant, argv [3], strlen (argv [3]), 0); while (recv (sortant, & buf, 1, 0)) printf ( "% c", buf); return 0; ) |
|
||||
|
Citation:
unsigned short my_port \u003d atoi (argv [2]); memset (& triste, 0, sizeof (sad)); sad.sin_family \u003d AF_INET; sad.sin_port \u003d htons (my_port); sad.sin_addr.s_addr \u003d inet_addr (argv [1]); tant que les deux ports et d'accueil sont numériques, et d'autre utilisation getservbyname gethostbyname. |
|
||||
|
Citation:
2. Mettez "perror (" connect ") dans le chemin juste après l'échec d'une connexion. 3. Ne netstat-a sur la machine cible et de confirmer qu'il ya vraiment une écoute sur le port vous essayez de vous connecter. 4. avant le connect () faire ce qui suit printf ( "connect (% s:% d) \ n", inet_ntoa (sad.sin_addr), ntohs (sad.sin_port)); |
|
||||
|
erreur socket
Salut,
l'exception de la dernière des solutions à u. une chose que je tiens à ajouter si vous êtes toujours face à une erreur alors s'il vous plaît utiliser ces options au moment de la compilation -lnsl-lsocket-lresolv et j'espère ensuite ur programme de travail amende. ![]() |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|