
07.07.2007, 09:20
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
С нами:
10721066
Репутация:
4360
|
|
Блин, стоит только отойти, уже флейма разведут на Н страниц. Таких тем в инете полно! Исходников тоже!
На крайняк если ТС ничего не найдет (вероятность менее 1%), то я потом выложу в паблик Antichat Web Tool, где скачивание страницы реализовано через чистые сокеты.
В двух словах:
Код:
SOCKET s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
SOCKADDR_IN sa = {0};
sa.sin_family = AF_INET;
HOSTENT* phe = gethostbyname("google.ru");
*(DWORD*)&sa.sin_addr.s_addr = *(DWORD*)phe->h_addr_list[0];
sa.sin_port = htons(80);
connect( s, &sa, sizeof(sa) );
const int bsize = 1024*1024; // 1 megabyte
char *buffer = new char[bsize];
wsprintf( buffer, "GET http://google.ru/ HTTP/1.0\r\nHost: google.ru\r\n\r\n" );
send( s, buffer, strlen(buffer), 0 );
int bytes = 0, pos = 0;
do {
bytes = recv( s, buffer+pos, bsize-pos, 0 );
if( !(bytes>0) )
break;
pos += bytes;
buffer[pos] = 0;
} while(1);
closesocket( s );
char *body = strstr( buffer, "\r\n\r\n" );
body += 4; // strlen of \r\n\r\n
// now buffer contains full response, body contains only response body
delete buffer;
Вот накатал скачивание при помощи класса CInternetFile библиотеки MFC.
Скачка файла через MFC - из пушки по воробьям
Тема закрыта
Последний раз редактировалось _Great_; 07.07.2007 в 11:31..
|
|
|