Uses UrlMon;
{ renvoie tout ce se trouve après le dernier "/" }
Function ExtractUrlFileName(Const aUrl: String): String;
Var
{$ifdef ver200}
Ptr : PWord;
{$else}
Ptr : PByte;
{$endif}
I, Lng : Integer;
Begin
Result := aUrl;
Lng := Length(aUrl);
Ptr := @Result[Lng];
For I := Lng Downto 1 Do
Begin
If Ptr^ = $2F Then Break;
Dec(Ptr);
End;
Inc(Ptr);
Result := Pchar(Ptr);
End;
{ Télécharge "Source" vers "Dest"
si "Dest" est vide c'est le nom de fichier
contenu dans "Source" qui est utilisé }
Function DownloadFile(Const Source: String; Var Dest: String): Boolean;
Begin
If Dest = '' Then
Dest := ExtractUrlFileName(Source);
Result := UrlDownloadToFile(Nil, PChar(Source), PChar(Dest), 0, Nil) = 0;
End;
{ Utilisation }
Procedure Tfrm_Main.btn_DownloadClick(Sender: TObject);
Var aDest: String;
Begin
aDest:= '';
If DownloadFile('http://www.delphifr.com/g/v9logo/v2/logodel.png', aDest) Then
ShowMessagefmt('Le téléchargement de %s a réussit', [aDest])
Else
ShowMessagefmt('Le téléchargement de %s a échoué', [aDest]);
End;