Título: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 18:25 pm Hola que tal,recien estoy con los sockets,intento conectarme a una IP,por el puerto 80 ya que es una pagina,solo quiero conectar,el codigo no da error,peor el IF que averigua si se conecta me da el error,miren:
Código
parece que no conecta :S,algun error ven?¿ Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 25 Septiembre 2011, 19:04 pm Nunca le asignas a Cliente lo que devuelve la función socket()...
Código
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 19:32 pm Hola,que tal,acabo de agregar la linea que me as dicho,el programa enciende,se queda un rato pensando (cosa que no hacia antes) pero alfinal me tira el mismo error :(
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 25 Septiembre 2011, 19:39 pm Cual error te tira?
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 19:51 pm Bueno es el erro que e escrito yo en el utlimo "cout" en la funcion "connect"
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 25 Septiembre 2011, 19:59 pm Cambia esto:
Código
Por esto: Código
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 20:05 pm Hey,acabo de probar,pero nada sigue sin funcionar :( que raro verdad?¿
puede ser algo de mi ordenador?¿ :S Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 25 Septiembre 2011, 20:07 pm La verdad no veo el error, pero aquí te dejo mi código que me funcionó:
Código
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 20:25 pm perfecto el tuyo si funciona,de todas formas me gustaria saber que a pasado con mi codio mas que nada para aprender un poco mas :) unca viene mal sia lguien ve el error sera de agradecer,muchas gracias por el code ^^
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 25 Septiembre 2011, 20:43 pm Creo que porque usaste la estructura SOCKADDR_IN y no sockaddr_in no se la verdad no estoy seguro.
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 25 Septiembre 2011, 20:49 pm hey,donde pone "google.com" ai e puesto "localhost",i em tira el error 10061 k significa conexion rechazada,por lo visto nop pueod conectar a mi propio host,sabes que puede ser?
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 26 Septiembre 2011, 05:10 am Que raro... si tienes algún servidor a la escucha en el puerto que te estás tratando de conectar debería funcionar.
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 26 Septiembre 2011, 21:22 pm Hola de nuevo,que tal,me surio un pequeño problemilla,ya consegui conectar los sockets i enviar datos al servidor,lo que pasa uqe cuando mando un simple "Hola" al llegar al servidor llega como caracteres raros :S no llega el "Hola" llegan cosas como "?$%" o cosas asin.....por que puede ser?¿
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 26 Septiembre 2011, 21:43 pm El servidor lo hiciste tu? Si muestras algo de código sería mejor...
Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 26 Septiembre 2011, 21:56 pm Cliente:
Código
Servidor: Código
los datos se mandan,pero no se ven los caracteres correcamente Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 26 Septiembre 2011, 22:13 pm En el cliente nunca le asignas ningún contenido a la variable Buffer, de esta manera:
Cliente: Código
Y lo recibes mal no le puedes hacer strlen() a Buffer Servidor: Código
PD: Recuerda que strcmp() devuelve 0 si las cadenas son iguales. Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 26 Septiembre 2011, 22:24 pm Hola,acabo de probar los codigo,pero no recibe nad ale servidor....:S se queda con la pantalla negra
Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 26 Septiembre 2011, 22:36 pm No me había fijado pero estás aceptando mal la conexión... en la parte donde llamas a la función accept() deberías hacer algo así:
Código
Y en esta parte en el servidor deberías cambiarla así: Remote_Server.sin_addr = *((in_addr *)gethostbyname("localhost")->h_addr); por Remote_Server.sin_addr = INADDR_ANY; Edit: Recuerda que cuando llames accept() te devolverá una variable tipo SOCKET que es la nueva conexión que acabas de aceptar y esa variable es la que utilizarás para enviar/recibir los datos. Título: Re: Problema con sockets WinSock2 Publicado por: Riki_89D en 27 Septiembre 2011, 10:33 am Hola,el servidor no me dja poner "Remote_Server.sin_addr = INADDR_ANY;"
me da error en donde esta el "=" ERROR: error C2679: '=' binario : no se encontró un operador que adopte un operando en la parte derecha de tipo 'u_long' Título: Re: Problema con sockets WinSock2 Publicado por: naderST en 27 Septiembre 2011, 19:52 pm Disculpa es así:
Remote_Server.sin_addr.s_addr = INADDR_ANY; O sino: Remote_Server.sin_addr.S_un.S_addr = INADDR_ANY; |