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

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

Процедура скачивания файлов создает "лишние" файлы...


novill ©   (2006-07-04 10:57:00) 

Вот процедура:

function  MyDownloadAndSaveURL(const Url: string; const Fname:String): string;
var
 hSession, hFile: HInternet;
 Buffer: array[1..10240] of Byte;
 BufferLen: LongWord;
 f: File;
begin //----------------------------DOWNLOAD
try
 hSession := InternetOpen('DownloadFile', INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
 if Assigned(hSession) then begin
   hFile := InternetOpenURL(hSession, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD, 0);
   if Assigned(hFile) then begin

     AssignFile(f, Fname);
     Rewrite(f,1);
     repeat
       InternetReadFile(hFile, @Buffer, SizeOf(Buffer), BufferLen);
       BlockWrite(f, Buffer, BufferLen);
     until (BufferLen = 0);
     CloseFile(f);
     InternetCloseHandle(hFile);
   end;
   InternetCloseHandle(hSession);
 end;
 Result:='';
except
 on e:EInOutError do result:=result+#13#10+e.ClassName+' '+e.Message+' '+SysErrorMessage(e.ErrorCode);
 on e:exception do result:=result+#13#10+e.ClassName+' '+e.Message;
end;
end;


Иногда, при ошибках она создает
какие-то странные файлы с именами типа text_???.tmp
с вот таким содержимым

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dkoi8-r">
<META content=3D"MSHTML 6.00.2900.2180" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV> </DIV></BODY></HTML>


umbra   (2006-07-12 14:39:00) [1]


> Откуда они берутся? и как избежать их создания?
>

Это кусок файла, который Вы запрашивали. Если бы InternetOpenURLзавершилась успешно, то text_???.tmpбыл бы переименован в чего-то_там.html. Избежать их появления нельзя, зато, в случае возникновения ошибки, файл можно докачать


novill   (2006-07-12 12:13:00) [2]

Не знаю, кто из модераторов форума, и в частности "WinAPI" перенес эту ветку в форум "Начинающим", но искренне этому человеку рассудительности.


novill   (2006-07-04 10:59:00) [3]

Откуда они берутся? и как избежать их создания?


Наверх

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