Socket

edpunisher Messages postés 13 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 6 avril 2006 - 25 juin 2005 à 01:58
reistlein Messages postés 4 Date d'inscription samedi 8 octobre 2005 Statut Membre Dernière intervention 4 avril 2006 - 4 avril 2006 à 22:28
kikoo, j ai un projet oû je doit utiliser les socket entre une machine windows et une autre unix sauf que j ai tt asseyer mais rien ne marche, le plus grave c est que j ai plus le temps pour m approfondir la dessus
pleaze aidez moi, mon souhait c est d avoir un code source sous windows et un autre sur unix pour transferer une chaine de caractere entre les deux machines.
j offre 200 000$ a qui m aidera

2 réponses

RM50Man Messages postés 314 Date d'inscription mercredi 1 novembre 2000 Statut Membre Dernière intervention 20 août 2006
30 sept. 2005 à 23:39
<TT> Partie Cliente
</TT>

<TT>#include
</TT>

<TT>#pragma comment(lib, "ws2_32.lib")
</TT>

<TT>void main()
</TT>

<TT>{
</TT>

<TT>WSADATA WSAData;
</TT>

<TT>WSAStartup(MAKEWORD(2,0), &WSAData);
</TT>

<TT>SOCKET sock;
</TT>

<TT>SOCKADDR_IN sin;
</TT>

<TT>char *buffer = new char[255];
</TT>

<TT>sock = socket(AF_INET, SOCK_STREAM, 0);
</TT>

<TT>sin.sin_addr.s_addr= inet_addr("62.250.14.6");
</TT>

<TT>sin.sin_family= AF_INET;
</TT>

<TT>sin.sin_port= htons(6667);
</TT>

<TT>connect(sock, (SOCKADDR *)&sin, sizeof(sin));
</TT>

<TT>recv(sock, buffer, sizeof(buffer), 0);
</TT>

<TT>closesocket(sock);

</TT>

<TT>
WSACleanup();
</TT>

Partie serveur:

<TT>#include
</TT>

<TT>#pragma comment(lib, "ws2_32.lib")
</TT>

<TT>void main()
</TT>

<TT>{
</TT>

<TT>WSADATA WSAData;
</TT>

<TT>WSAStartup(MAKEWORD(2,0), &WSAData);
</TT>

<TT>SOCKET sock;
</TT>

<TT>SOCKET csock;
</TT>

<TT>SOCKADDR_IN sin;
</TT>

<TT>SOCKADDR_IN csin;
</TT>

<TT>sock = socket(AF_INET, SOCK_STREAM, 0);
</TT>

<TT>sin.sin_addr.s_addr= INADDR_ANY;
</TT>

<TT>sin.sin_family= AF_INET;
</TT>

<TT>sin.sin_port= htons(23);
</TT>

<TT>bind(sock, (SOCKADDR *)&sin, sizeof(sin));
</TT>

<TT>listen(sock, 0);
</TT>

<TT>while(1)
</TT>

<TT>{
</TT>

<TT>int sinsize = sizeof(csin);
</TT>

<TT>if((csock = accept(sock, (SOCKADDR *)&csin, &sinsize)) != INVALID_SOCKET)
</TT>

<TT>{
</TT>

<TT>send(csock, "Hello world!\r\n", 14, 0);
</TT>

<TT>}
</TT>

<TT>}
</TT>

<TT>}</TT>

RM50man
0
reistlein Messages postés 4 Date d'inscription samedi 8 octobre 2005 Statut Membre Dernière intervention 4 avril 2006
4 avril 2006 à 22:28
les deux bous de programme son pour windows client comme serveur car il utilise la bibliotèque winsock2
t'a oublier aussi les include mais je pense que c'etait ca.
Si je me trompe ca me ferait bien plaisir je cherche des bibliotèque commune windows/linux pour les socket semaphore et thread.
0
Rejoignez-nous