Kod: Tümünü seç
uses
URLMon, ShellApi;
function DownloadFile(SourceFile, DestFile: string): Boolean;
begin
try
Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0;
except
Result := False;
end;
end;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
const
// İndirilecek dosyanın yeri
SourceFile = 'Http://www.xxx.com/online.xml';
// dosyanın kaydedileceği yer
DestFile = 'c:\temp\Haber.xml';
begin
if DownloadFile(SourceFile, DestFile) then
begin
ShowMessage('İndirme işlemi başarılı !');
end else begin
ShowMessage(Hata : ' + SourceFile)
end;
end;
Ancak xml in olduğu linki İE den açıp refresh ettiğiniz takdirde yeni xml i görebiliyor bu DownloadFile fonksiyonu...Ama garip olan programı yaptığım bilgisayarda bu sorun yok...yani yeni bir işlemi direk algılıyor ve en son xml dosyasını indiriyor...programı başla bilgisayara kurduğumda yukarda bahsettiğim sorun oluyor...Başka bir dosya indirme fonksiyonuda denedim yine aynı sorunu yaşadım..
Bunu çözmek için şunu yaptım..belki biraz saçma ama programa bi webbrowser ekleyip sayfayı açtırıp sayfayı refresh ettiriyordum..bu oluyor fakat program bu sefer donuyordu...
Kısacası webdeki dosyayı nasıl güncel olarak indidirim... İE deki refresh ( F5 ) gibi düşünün..
Teşk.