Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Stereo en 19 Noviembre 2011, 12:20 pm



Título: Enviar mensaje sockets
Publicado por: Stereo en 19 Noviembre 2011, 12:20 pm
Hola buenas, soy nuevo en el foro, y viendo que aquí se resuelven muchas dudas, decidi registrarme.

Mi duda es cómo puedo enviar un texto por ejemplo a una IP en c++?
He estado viendo tutoriales de sockets pero apenas me entero :S

Encontré esto:

Código
  1. #include "winsock2.h"
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. void wsock_init();
  6.  
  7. int main()
  8. {
  9.    wsock_init();
  10.    SOCKET sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
  11.    struct sockaddr_in si;
  12.    si.sin_family = AF_INET;
  13.    si.sin_port = htons(666);
  14.    si.sin_addr = *(struct in_addr*)gethostbyname("asdasd")->h_addr;
  15.    memset(&(si.sin_zero), 0, 8);
  16.  
  17.    if (connect(sock, (struct sockaddr*)&si, sizeof(struct sockaddr)))
  18.    {
  19.        cout << "Could not connect to host.\n";
  20.        return 1;
  21.    }
  22.  
  23.    char buf[4096];
  24.    while (recv(sock, buf, 4096, 0))
  25.        cout << buf;
  26.  
  27.    shutdown(sock, SD_BOTH);
  28.    closesocket(sock);
  29.    WSACleanup();
  30.    return 0;
  31. }
  32.  
  33. void wsock_init()
  34. {
  35.    WSADATA wd;
  36.    if (WSAStartup(MAKEWORD(1, 1), &wd))
  37.    {
  38.        cout << "Error initializing Winsock DLL" << endl;
  39.        exit(1);
  40.    }
  41. }

Si alguien puede ayudarme se lo agradecería.

PD: Se un poquito de c++ y uso code::blocks