|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.07.2009, 07:17 | #11 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
uberchel
Мне через прокси надо.... а как на счёт этого в вашем коде Код:
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
10.04.2010, 15:03 | #12 | |
Регистрация: 04.11.2009
Сообщений: 6
|
Такая была проблема при использовании кода с первой страницы темы. Файл-то качался! Но! Он сохранялся в кэше IE. Поэтому если что-нибудь изменится в файле - скорее всего, скачается файл из кэша - без новых изменений.
Решение проблемы: 1) Очистка кэша IE после скачки файла: procedure EmptyIECache; var lpEntryInfo: PInternetCacheEntryInfo; hCacheDir: LongWord; dwEntrySize: LongWord; dwLastError: LongWord; begin dwEntrySize := 0; FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize); GetMem(lpEntryInfo, dwEntrySize); hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize); if (hCacheDir <> 0) then DeleteUrlCacheEntry(lpEntryInfo^.lp szSourceUrlName); FreeMem(lpEntryInfo); repeat dwEntrySize := 0; FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize); dwLastError := GetLastError(); if (GetLastError = ERROR_INSUFFICIENT_BUFFER) then begin GetMem(lpEntryInfo, dwEntrySize); if (FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize)) then DeleteUrlCacheEntry(lpEntryInfo^.lp szSourceUrlName); FreeMem(lpEntryInfo); end; until (dwLastError = ERROR_NO_MORE_ITEMS); end; Минус - как-то не правильно после скачки файла очищать кэш 2) Изменяем ссылку-источник на такую, например: http://www.example.ru/1.txt&rnd6363 После rnd - рандомно меняем цифры. Минус - получится много мелких файлов в кэше 3) Вместо строчки Цитата:
hURL := InternetOpenURL(hSession, PChar(fileURL),nil,0,INTERNET_FLAG_ NO_CACHE_WRITE,0); Минус - пока не нашел. Т.е третий способ, как я понял, самый оптимальный. Кстати, способ этот нашел на здесь |
|
10.04.2010, 15:53 | #13 |
Форумчанин
Регистрация: 28.03.2008
Сообщений: 940
|
Вот статья показывающая как скачать файл + ProgressBar + в потоке...
Сделано на примере IdHTTP, по этому добавить прокси - секундное дело... |
11.04.2010, 10:27 | #14 |
Форумчанин
Регистрация: 02.01.2010
Сообщений: 127
|
Данную функцию лучше не использовать, если твоя программа пойдет в массы, т.к. на нее ругаются антивирусы.
0_o
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа получения списка файлов директории и изменения атрибутов файлов | roma86 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 7 | 09.06.2009 09:08 |
Отправка файлов по HTTP протоколу с помощью MFC | Руслантус | Общие вопросы C/C++ | 0 | 27.05.2009 19:54 |
Скачка файлов из инета по очереди | koyotfgthispass | Работа с сетью в Delphi | 17 | 24.12.2008 17:50 |
Копирование файлов через http протокол | Serega_P | Работа с сетью в Delphi | 3 | 06.12.2008 14:35 |
Работа с ФТП: Скачка файлов | Horror | Общие вопросы .NET | 4 | 03.03.2008 14:50 |