![]() |
Transferencia de archivos con Sockets no me deja mas de 32KB!
Hola amigos,
Estoy usando ClientSocket, y ServerSocket para la transferecia de archivos, y me funciona muyyyyy bien! pero, cuando intento enviar un archivo mayor de 32K, me sale el archivo malo al otro lado, es decir, solo llegan 32K, por el numero, se me hace que neesito vaciar un buffer, limpiar algo, o algo asi,,,,, el codigo de envio es este: Código:
esto: Código:
cont++; Alguna idea? tiene algo que ver con el buffer del Socket? como lo limpio? Gracias! |
Hola, yo normalmente uso el idclientsocket de las indy y este tiene la propiedad de determinar el tamaño derl buffer (sendbuffersize) tanto de lectura como de escritura, predeterminado viene a 32768.
Le he echado un vistazo al componente clientsocket para ver si tenia una propiedad parecida y no la he visto por ningun lado, pero supongo que el problema es que restringe el tamaño del mensaje. Yo por experiencia te recomiendo los sockets de las indy ya que son mas completos, tendrias que cambiar muy poco codigo y estas tienen la propiedad de determinar el buffer de escritura. Un saludo. |
Muchas gracias por tu respuesta
Hola!
Gracias por tu respuesta! lo intentare con las indy. pero insisto.....hay alguna form ade limpiar el buffer??? Gracias! |
Lo que necesitas es aumentar el tamaño del buffer no limpiarlo ya que lo quieres es enviar archivos de mas de 32K y lo que creo que te pasa es que el tamaño del buffer esta restringindo a 32K como en las indy con lo cual de que te sirve limpiarlo.
No tengo mucha experiencia con el clientsocket ya que alguna vez que lo usado me ha dado problemas y me he pasado a las Indy, espero que alguno de los experimentados amigos de este foro te pueda ayudar mas que yo. Un saludo. |
gracias!
muchas gracias otra vez.
El problema del tamaño es del cliente? o del servidor? Muchas gracias |
Basandome en las Indy, el problema es de el cliente.
|
Que puedo decirte alguna ves hize un programa de transferencia de archivos con soquets no con los indy recuerdo que use streams para mandar archivos de hasta 38 Mb buscare el codigo y lo publicare pero te aseguro que se puede realizar
|
La franja horaria es GMT +2. Ahora son las 18:37:17. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi