Седня узнал что есть такая замечательная библиотека CURL (спасибо DOOM). Я пишу HTTP-клиент на с++ для автоматического скачивания софта (zip, exe, msi файлы). Обычные ссылки скачиваются нормально. Встроил сегодня в проект CURL. Все нормально. Только проблема с динамическими ссылками осталась. Как скачивать файлы по ним? Код для скачивания такой:
CURL* curl = curl_easy_init();
if ( NULL != curl )
{
char *url = "
http://download.cnet.com/3001-2348_4-10265538.html?spi=44b8e6c3eb36b85007310e94b81d6d16&part=dl-10265538";
char outfilename[MAX_PATH] = "D:\\file.exe";
FILE* fp = fopen(outfilename,"wb");
if( NULL != fp )
{
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
curl_easy_setopt(curl, CURLOPT_HEADER, 0);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 120);
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 10);
CURLcode res;
res = curl_easy_perform(curl);
fclose(fp);
}
curl_easy_cleanup(curl);
}