/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

falla al linkear, sokets

 
      Índice del Foro elrincondelc.com -> Dev-C++
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
dreams_eater



Registrado: 03 Oct 2007
Mensajes: 21

MensajePublicado: 03/10/2007 2:08 pm
Título: falla al linkear, sokets

Soy nuevo en DevC++, pero viejo con C++( trabaje con el borland y el turboC++ DOS).
Postie aca y no en "Programación en Servidores", pensando que este es el más adecuado.
Mi pregunta es cual es la falla, me habre olvidado algun using...?

Código:
#include <winsock.h>
#include <iostream>
using std::cerr;
using std::cout;
using std::endl;
#include <stdio.h>
#include <string.h>

hostent *p;//struct donde ahi va a guardar el host externo
char *alias;
int i;
IN_ADDR add;


int main(int argc, char *argv[])
{

   if(argc!=2)
   {
      strerror(errno);
      cout << "error debe pasar un dominio!!";
      return 1;
   }
   
   
   WSADATA wsaData;

   if (WSAStartup(MAKEWORD(1, 1), &wsaData) !=0){
      cerr << "WSAStartup fallo";
      return 1;
   }
   
   p=gethostbyname(argv[1]);
   
   if (p==NULL)
   {
      strerror(errno);
      cerr << "error en gethostbyname(),no se pudo obtener el host" << endl;
      return 1;
   }
   else
   {
      cout << "nombre del host :" << p->h_name << endl;
      
      memcpy(&add.S_un,p->h_addr_list[0],p->h_length);
      
      cout << "dirección IP :" << inet_ntoa(add) << endl;
      
      cout << "tipo de direccion: " << p->h_addrtype << endl;
      
      cout << "longuitud de la direccion en byte :" << p->h_length << endl;
      
      if(p->h_aliases[0]!=NULL)
      {
         cout << "alias :" << p->h_aliases[0] << endl;
      }
      
      
      cout << "direcciones IP :" << endl;
      i=0;
      while(p->h_addr_list[i])
      {
         memcpy(&add.S_un,p->h_addr_list[i],p->h_length);
         cout << "direccion IP :" << inet_ntoa(add) << endl;
         i++;
         
      }

   }
   
   WSACleanup();
   return 0;
}


El codigo original era para VC++ y yo lo adapte.
Lo saque de C con clase, es que soy nuevo con sockets
Volver arriba
cheroky



Registrado: 22 Sep 2005
Mensajes: 1372
Ubicación: En ecx esperando un call

MensajePublicado: 03/10/2007 2:41 pm
Título:

El código es correcto, probablemente tengas un error de vinculación, tienes que enlazar con la biblioteca libwsock32.a

S2.
_________________
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Plano es mejor que anidado.
- Ralo es mejor que denso.
Volver arriba
dreams_eater



Registrado: 03 Oct 2007
Mensajes: 21

MensajePublicado: 03/10/2007 5:55 pm
Título:

Question y con que comando añado al linker la libwsock32.a?

supongo: -lwsock32

Idea Me compilo OK....ahora lo pruevo
Volver arriba
dreams_eater



Registrado: 03 Oct 2007
Mensajes: 21

MensajePublicado: 03/10/2007 6:14 pm
Título:

Very Happy impecable!

Creo que aprendi algo nuevo,
Gracias 1000, cheroky.

PD: Pasame un buen tutorial, si no queres que te siga molestando, con dudas de novato. (xD)
Volver arriba
cheroky



Registrado: 22 Sep 2005
Mensajes: 1372
Ubicación: En ecx esperando un call

MensajePublicado: 03/10/2007 7:10 pm
Título:

dreams_eater escribió:
PD: Pasame un buen tutorial, si no queres que te siga molestando, con dudas de novato. (xD)

No es ninguna molestia.
Un tutorial para iniciarse en sockets, busca por la guia beej, para lo demas google.

S2.
_________________
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Plano es mejor que anidado.
- Ralo es mejor que denso.
Volver arriba
daltomi



Registrado: 28 Abr 2007
Mensajes: 120
Ubicación: Argentina

MensajePublicado: 03/10/2007 9:38 pm
Título:

En el sitio sockaddr.com puedes encontrar varios ejemplos y sobre todo ver un poco lo que es la versión 2.0 o WinSock 2.
Volver arriba
dreams_eater



Registrado: 03 Oct 2007
Mensajes: 21

MensajePublicado: 05/10/2007 7:19 pm
Título:

Gracias Very Happy , leere beej, por el momento
Volver arriba
      Índice del Foro elrincondelc.com -> Dev-C++
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com