¿Que lenguaje me aconsejais para sockets en windows?

Iniciado por hackstyle18, 13 Julio 2010, 20:36 PM

0 Miembros y 1 Visitante están viendo este tema.

Horricreu

Cita de: hackstyle18 en 13 Julio 2010, 21:13 PM
Gracias por la ayuda, me estan sirviendo mucho vuestros enlaces   ;D

Te estamos pasando enlaces en C/C++. ¿Sabes C/C++ como mínimo :-\?

Saludos :P

hackstyle18

si, si que se c/c++ , se programar sockets en C# , php , y vb ,


lo unico que C nose porque se me ace mas complicado xD, luego aparte , ai un ejemplo de una aplicacion cliente/servidor pero a la hora de compilarlo con la libreria de winsock.h,  no funciona..... ai que añadir alguna libreria mas? si me dijierais cualas son ....


Gracias de nuevo ^^

hackstyle18

este es el ejemplo que intento compilar, pero nose que librerias aparte de la de winsock ai que añadir :

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("[MiniXat para tutorial de sockets MazarDZone Foro]\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;
}

@synthesize

Debería ir. Siempre que uses funciones que estén dentro de la cabecera claro. Ante la duda, cuelga el código en el subforo de C/C++ y añade el error que te tira tu compilador.

@synthesize

Reitero lo dicho, esto es el foro general de programación, para poner source en C, ve al subforo de C/C++  :)


Debci

Sin ganas alguna de abrir polemica, creo que en Java es mucho mas sencillo y igualmente completo que C

Saludos


[D4N93R]

Cita de: Debci en 17 Julio 2010, 11:50 AM
Sin ganas alguna de abrir polemica, creo que en Java es mucho mas sencillo y igualmente completo que C

Saludos

Si en lenguajes administrados es mucho más fácil, además de tener un poco más de clases y eso para trabajar con ellas, pero eso depende como dije en un post en la página 1, del tipo de aplicación que necesite.