Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: Frijolito en Febrero 23, 2019, 01:28:27 PM

Título: Problema al pasar archivos por sockets en C
Publicado por: Frijolito en Febrero 23, 2019, 01:28:27 PM


Estoy haciendo un programa y necesito que se puedan pasar archivos a través de los sockets pero el programa se queda pegado el server el cual enviá el archivo y el cliente se pega, también abrir el archivo en modo binario (no se si se dice así) y tampoco funciono . Gracias de antemano.

Esta es para enviar.


void EnviarArchivo( int sock, char Name_file[50] ){

FILE *file;
file = fopen(Name_file, "r");

char Buff[1000];

while( fgets( Buff ,1000 ,file) != NULL ){
    send(sock, Buff, sizeof(Buff), 0);
}
send(sock, "Listo.", sizeof("Listo."), 0);
fclose(file);


y esta parte es para recibir.


void RecibirArchivo( int sock, char Name_file[50] ){
FILE *file;
char Buff[1000];

file = fopen(Name_file, "w");
while(strcmp(Buff,"Listo.")){
    recv( sock ,Buff ,1000 , 0 );
    if(strcmp(Buff, "Listo.")){
        fputs( Buff, file );
    }
}
fclose(file);


Si necesitan otra parte del codigo editare el post.