Показать сообщение отдельно

  #14  
Старый 11.04.2008, 19:33
KSoniX
Познающий
Регистрация: 17.01.2008
Сообщений: 94
Провел на форуме:
314553

Репутация: 38
Отправить сообщение для KSoniX с помощью ICQ
По умолчанию

вот еже код
Цитата:
printf(buffer,"GET %s HTTP/1.1\r\nHost: %s\r\nProxy-Authorization: Basic %s\r\n\r\n\0",proxies[curprox].host,"database.clamav.net",buf);// хттп запрос

retval=send(sock,buffer,strlen(buffer),0);
FILE *fd=fopen("C:\\Daily.cvd","ab");// файл для записи

//Receive answer and check if connected to other proxy
retval = recv(sock,buffer,512,0);

// находим длину приходящего файла
char *a=strstr(buffer,"Content-Length:");
a+=15;
int len =atoi(a);//длина файла в байтах

a=strstr(buffer,"\r\n\r\n"); //на ходим конец сообщения от прокси
a+=4;
int x=a-buffer;//на чала приходящего файла
if(retval-x!=0)
fwrite(a,sizeof(char),retval-x,fd);// запись первых retval-x байта
len-=retval-x;// уменьшаем длину файла
char* buffer1=(char*)malloc(len+2);

//и запись до конца файла
while(1)
{
retval = recv(sock,buffer1,len,0);
buffer1[retval]='\0';
len-=retval;
int k=fwrite(buffer1,sizeof(char),retval,fd);
if(len<=0)
{
fclose(fd);break;
}
}
а этод код он работает с сокетами и скачивает файл

Последний раз редактировалось KSoniX; 11.04.2008 в 19:36..
 
Ответить с цитированием