elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  CLIENTE / SERVIDOR EN C ++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: CLIENTE / SERVIDOR EN C ++  (Leído 1,649 veces)
rodri56

Desconectado Desconectado

Mensajes: 1


Ver Perfil
CLIENTE / SERVIDOR EN C ++
« en: 27 Mayo 2014, 20:25 pm »

ALGUIEN ME PODRIA AYUDAR CON ESTE TRABAJO.. PORFAVOR ME SERIA DE MUCHA AYUDAR .. EN CLASE ME DIERON ESTE PROGRAMA Y DIJERON K MODIFIKE LOS ERRORES .. :( SE ESTA TRABAJANDO EN DEV-C++
CLIENTE:
#include <winsock2.h>
#include <winsock.h>
 //la cabezera para usar las funciones de winsock
#include <stdio.h>

int main()
{
   WSADATA wsa;
   SOCKET sock;
   struct hostent *host;
   struct sockaddr_in direc;
   int conex;
   char Buffer[1024];
   int len;

   //Inicializamos
   WSAStartup(MAKEWORD(2,2),&wsa);

   //resolvemos el nombre de dominio localhost, esto se resolverá a 127.0.0.1
   host=gethostbyname("localhost");

   //creamos el socket
   sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
   if (sock==-1)
   {
      printf("Error al crear el socket");
      return -1;
   }
   //Definimos la dirección a conectar que hemos recibido desde el gethostbyname
   //y decimos que el puerto al que deberá conectar es el 9999 con el protocolo ipv4
   direc.sin_family=AF_INET;
   direc.sin_port=htons(9999);
   direc.sin_addr = *((struct in_addr *)host->h_addr);
   memset(direc.sin_zero,0,8);

   //Intentamos establecer la conexión
   conex=connect(sock,(sockaddr *)&direc, sizeof(sockaddr));
   if (conex==-1)  //si no se ha podido conectar porque no se ha encontrado el host o no
                  //está el puerto abierto
   {
      printf("No se ha podido conectar\n");
      return -1;
   }

   printf("[enviar]\n");
   printf("[escribe el texto a enviar o 'salir' para salir  ]\n");

   while (len!=-1 && strcmp(Buffer,"salir")!=0) //mientras el socket no se haya desconectado
                                               //y no se escriba salir
   {
      printf("Texto a enviar:");
      fgets(Buffer,1023,stdin);  //pedir texto a enviar por pantalla
      len=send(sock,Buffer,strlen(Buffer),0); //enviar el texto que se ha introducido
   }
   return 0;
}

SERVIDOR:
#include <winsock2.h>
#include <winsock.h>
 //la cabezera para usar las funciones de winsock
#include <stdio.h>
//#pragma comment(lib,"ws2_32.a")
int main()
{
   WSADATA wsa;
   SOCKET sock;
   struct sockaddr_in local;
   int len=0;
   char Buffer[1024];

   //Inicializamos
   WSAStartup(MAKEWORD(2,0),&wsa);
   
   //Creamos el socket
   sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

   //defnimos dirección por defecto, ipv4 y el puerto 9999
   local.sin_family = AF_INET;
   local.sin_addr.s_addr = INADDR_ANY;
   local.sin_port = htons(9999);

   //asociamos el socket al puerto
   if (bind(sock, (SOCKADDR*) &local, sizeof(local))==-1)
   {
      printf("error en el bind\n");
      return -1;
   }

   //ponemos el socket a la escucha
   if (listen(sock,1)==-1)
   {
      printf("error en el listen\n");
      return -1;
   }
   
   len=sizeof(struct sockaddr);

   //hay una conexión entrante y la aceptamos
   sock=accept(sock,(SOCKADDR*)&local,&len);

   printf("[SERVIDOR]\n");
   printf("[Cuando se vaya recibiendo texto aparecera en pantalla    ]\n");

   while (len!=0) //mientras estemos conectados con el otro pc
   {
      len=recv(sock,Buffer,1023,0); //recibimos los datos que envie

      if (len>0)  //si seguimos conectados
      {
         Buffer[len]=0; //le ponemos el final de cadena
         printf("Texto recibido:%s",Buffer); //imprimimos la cadena recibida
      }
   }
   
   return 0;
}

AGRADECERIA SU AYUDA..!!


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.937


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: CLIENTE / SERVIDOR EN C ++
« Respuesta #1 en: 27 Mayo 2014, 20:34 pm »

No se hacen tareas, lee las reglas del foro por favor.


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
CLIENTE-SERVIDOR EN VB.NET ¿?
Programación Visual Basic
Lord Vader 3 2,498 Último mensaje 1 Septiembre 2005, 19:42 pm
por Lord Vader
cliente/servidor en vb.net¿?¿?¿?
.NET (C#, VB.NET, ASP)
WarGhost 5 6,524 Último mensaje 17 Junio 2006, 19:22 pm
por BADBYTE-K
App Cliente/Servidor.
Programación Visual Basic
1 1,694 Último mensaje 17 Junio 2006, 17:13 pm
por Cicklow
Cliente servidor
Programación Visual Basic
charl_1310 6 2,590 Último mensaje 15 Agosto 2007, 06:19 am
por APOKLIPTICO
Cliente -Servidor.
.NET (C#, VB.NET, ASP)
Meta 0 3,522 Último mensaje 22 Marzo 2009, 09:12 am
por Meta
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines