CLIENTE
Código
#include <iostream> #include<winsock2.h> #include<winsock.h> #include<stdio.h> #include<conio.h> #define port 7200 #define ip 192.168.0.1 using namespace std; int main(int argc, char *argv[]) { WSADATA wsa; char buffer[30]; int conexion; struct sockaddr_in direccion; int sock; char mensaje [30]; WSAStartup(MAKEWORD(2,0),&wsa); if(sock=socket(AF_INET,SOCK_STREAM,0)<0){ printf("error al crear socket"); } else{ printf("socket creado...\n"); Sleep(4000); printf("aceptando...\n"); Sleep(4000); } direccion.sin_family=AF_INET; direccion.sin_port=htons(7200); direccion.sin_addr.s_addr=INADDR_ANY; bind(sock,(struct sockaddr*)&direccion,sizeof(struct sockaddr_in)); conexion=connect(sock, (struct sockaddr *)&direccion, sizeof(struct sockaddr_in)); if(conexion==1){ printf("conexion establecida con servidor"); } else{ printf("conexion no establecida"); } while(conexion==0){ printf("mensaje:"); scanf("%c",&mensaje); } } SERVIDOR #include <iostream> #include<winsock2.h> #include<winsock.h> #include<stdio.h> #include<conio.h> #define port 7200 using namespace std; int main(int argc, char *argv[]) { WSADATA wsa; char buffer[50]="bienvenido,estas conectado"; struct sockaddr_in direccion; int sock; int tam=sizeof(struct sockaddr_in); int n_sock; int mensaje; WSAStartup(MAKEWORD(2,0),&wsa); if(sock=socket(AF_INET,SOCK_STREAM,0)<0){ printf("error al crear socket"); } else{ printf("socket creado...\n"); Sleep(2000); printf("escuchando...\n"); Sleep(2000); } direccion.sin_family=AF_INET; direccion.sin_port=htons(7200); direccion.sin_addr.s_addr=inet_addr("localhost"); bind(sock,(struct sockaddr*)&direccion,sizeof(struct sockaddr_in)); listen(sock,1); if(listen<0){ printf("error en la escucha"); } else{ printf("la escucha es correcta...\n"); Sleep(2000); } if(n_sock=accept(sock,NULL,NULL)<0){ printf("error al aceptar clientes"); } else{ printf("esperando clientes...\n"); mensaje=sendto(sock, buffer, sizeof(buffer),0,(struct sockaddr*)&direccion,sizeof(struct sockaddr*)); } puts(buffer); getch(); closesocket(sock); return 0; }
Mod: Los códigos deben ir en etiquetas GeSHi





Autor


En línea
