1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
PageDown := DownAndReturnThis('http://www.ffddg.fr/fggg.php');
//pour télécharger un fichier sur Internet et le retourner sous forme de string
Function DownAndReturnThis(URL: String): String;
Const
Agent = 'Check for update';
Var
hFile, HInet: HINTERNET;
Buffer: Array[0..32767] Of Char;
BufRead: Cardinal;
BufSize: Cardinal;
Begin
// on met le résultat vide si il y a une erreur
Result := '';
HInet := InternetOpen(PChar(Agent), INTERNET_OPEN_TYPE_PRECONFIG, NIL, NIL, 0);
If Assigned(HInet) Then
Try
//on essaye d'ouvrir l'adresse du fichier
hFile := InternetOpenUrl(HInet, PChar(URL), NIL, 0, INTERNET_FLAG_RELOAD +
INTERNET_FLAG_NO_CACHE_WRITE + INTERNET_FLAG_EXISTING_CONNECT +
INTERNET_FLAG_NO_COOKIES, 0);
//si on a réussi à l'ouvrir
If Assigned(hFile) Then
Try
//on essaie de récupérer les données du fichier
BufSize := SizeOf(Buffer);
With TStringStream.Create('') Do
Try
While InternetReadFile(hFile, @Buffer, BufSize, BufRead) And (BufRead > 0) Do
Write(Buffer, BufRead);
//le résultat est le fichier téléchargé
Result := DataString;
Finally
Free; //on libère l'élément qui a permet de stocker le téléchargement de fichiers
End;
Finally
InternetCloseHandle(hFile);
End;
Finally
InternetCloseHandle(hinet);
End;
End; |
Partager