Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

докачка файлов [D7, WinXP]


anton773 ©   (2006-06-27 22:00:00) 

Здравствуйте!Помогите разобраться есть код(широко известный) для докачивания файлов в случае разрыва связи.Закачка идет нормально,а вот с докачкой возникли проблемы: сама докачка начинается нормально,байты информации поступают на компьютер но в файл не дописываются.(как бы уходят вникуда),если закачивать тот же самый файл с начала то проблем не возникает.Докачка файла сервером поддерживается(проверял) файл другой программой не открывался. Помогите ПЛЗ.Все вроде элементарно,но почему то не работает. Хотя бы подскажите в какую сторону копать.                                                                             var
Resumepos,Bufferlen,Sumsize :dword;
hSession,hUrl:Hinternet;
Buffer: array[1..1024] of byte;
err: boolean;
begin
Sumsize:=0; Resumepos:= 0;
AssignFile(F,Form2.Edit2.Text);
if FileExists(Form2.Edit2.Text) then
   begin
Reset(f,1);
Resumepos:= FileSize(f);
Seek(f,filesize(f));

end  else Rewrite(f,1);
NADO := true;
hSession:= InternetOpen('andowload',PRE_CONFIG_INTERNET_ACCESS,nil,nil,0);
hUrl:= InternetOpenUrl(hSession,pchar(Form2.Edit1.Text),nil,0,0,0);
InternetQueryDataAvailable(hUrl,Sumsize,0,0);

 if Resumepos > 0 then

   begin
InternetSetFilePointer(hUrl,Resumepos,nil,0,0);
end;
repeat
err:= InternetReadFile(hUrl,@buffer,SizeOf(Buffer),Bufferlen);
BlockWrite(f,Buffer,Bufferlen);
Application.ProcessMessages;
until (Bufferlen= 0) or (NADO= false);
ShowMessage('успешно загружено');


anton773   (2006-06-30 21:27:00) [1]

Спецы ау-уууууууу!


Наверх

Титульная страница Поиск, карта сайта Написать письмо