Problema con socket en java y c++

alfaximena
10 de Julio del 2009
Estoy conectandome a un servidor desarrollado en java el cual utiliza sys/socket.h y usa la clase DataInputStream, para comunicarse usa espec铆ficamente readUTF de la forma:

in = new DataInputStream(socket.getInputStream());
inputString = in.readUTF()

Mi aplicaci贸n en C++ usa winsock2.h y utilizo el m茅todo send para enviar las tramas al servidor java as铆:

#define MAXLONGITUD 10000
char bufEnviados[MAXLONGITUD + 1];

bufEnviados[0] = (0xff & (longitud >> 8));
bufEnviados[1] = (0xff & longitud);

send(sock, bufEnviados,strlen(bufEnviados), 0 );

Env铆o los dos primeros caracteres con formato UTF para que el servidor en java los pueda reconocer.

La aplicaci贸n funcion贸 correctamente hasta que recibi贸 una trama mayor de 6.236 caracteres despu茅s
de lo cual cierra la conexi贸n con el socket y se cae mi aplicaci贸n!

He realizado varias pruebas y no logro enviar m谩s de esos 6.236 caracteres, sin embargo si logro re-
cibir cualquier cantidad de caracteres sin problemas!

Alguien puede ayudarme a resolver este problema? estoy intentando de todo y no lo logro!

De antemano muchas gracias!