Bonjour

(En rapport avec : http://www.developpez.net/forums/d11...rnet-explorer/ )

Je cherche suivant ce code précis (3) :
http://www.swissdelphicenter.ch/torr...ode.php?id=412

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
45
46
{3. Forces a download of the requested file, object, or directory listing from the origin server,
    not from the cache
}
 
function DownloadURL_NOCache(const aUrl: string; var s: String): Boolean;
var
  hSession: HINTERNET;
  hService: HINTERNET;
  lpBuffer: array[0..1024 + 1] of Char;
  dwBytesRead: DWORD;
begin
  Result := False;
  s := '';
  // hSession := InternetOpen( 'MyApp', INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
  hSession := InternetOpen('MyApp', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
  try
    if Assigned(hSession) then
    begin
      hService := InternetOpenUrl(hSession, PChar(aUrl), nil, 0, INTERNET_FLAG_RELOAD, 0);
      if Assigned(hService) then
        try
          while True do
          begin
            dwBytesRead := 1024;
            InternetReadFile(hService, @lpBuffer, 1024, dwBytesRead);
            if dwBytesRead = 0 then break;
            lpBuffer[dwBytesRead] := #0;
            s := s + lpBuffer;
          end;
          Result := True;
        finally
          InternetCloseHandle(hService);
        end;
    end;
  finally
    InternetCloseHandle(hSession);
  end;
end;
 
//aufrufen
var
  s: String;
begin
 if DownloadURL('http://www.swissdelphicenter.ch/', s) then
   ShowMessage(s);
end;
Comment "sortir" l'objet downloadé, afin de l'envoyer par exemple vers le dossier Temp de l'user de session afin de pouvoir le gérer.

Car le code ci-dessus est impec ; ça rafraîchi effectivement l'objet pointé en cache (pas une mince affaire !).

Mais comment le récupérer ?

J'ai bien noté le premier paramètre de InternetOpen(), mais...

Car tout le contenu de ce Temporary Internet File est considéré comme invisible par toutes les méthodes de copie que j'ai tenté.
(Sauf des fichiers .txt via une StringList, mais pour tout autre objet = niet)

Merci de votre expérience