Page 1 sur 1

download http to memory

Publié : ven. 06/nov./2009 15:37
par Thyphoon
Salut les enfants

je cherche un code (multiplatforme) permettant de télécharger en http des données text et d'envoyé des données en GET !
il existe des codes un peu partout sur les forums mais aucun ne fonctionne vraiment correctement
en attendant j'utilise celui là qui utilise des API Windows
en vérité il me faudrait la même commande que ReceiveHTTPFile() mais sans passé part un fichier (pour des gains de perfs)

Code : Tout sélectionner

Procedure.l DownloadToMem ( URL.s, *lpRam, ramsize.l ) 
  Protected agent.s, hInet.l, hData.l, Bytes.l 
  
  ;  #INTERNET_OPEN_TYPE_DIRECT    = 1 
  ;  #INTERNET_DEFAULT_HTTP_PORT   = 80 
  ;  #INTERNET_SERVICE_HTTP        = 3 
  ;  #INTERNET_FLAG_NO_CACHE_WRITE = $4000000 
  ;  #INTERNET_FLAG_RELOAD         = $8000000 

  agent.s = "Mozilla/4.0 (compatible; ST)" 
  hInet.l = InternetOpen_ ( @agent.s,0,0,0,0 ) 
  hData.l = InternetOpenUrl_ ( hInet, @URL.s, "", 0, $8000000, 0 ) 
  
  If hData > 0 : InternetReadFile_ ( hData, *lpRam, ramsize.l, @Bytes.l ) : Else : Bytes = -1 : EndIf 
  
  InternetCloseHandle_ (hInet) 
  InternetCloseHandle_ (hFile) 
  InternetCloseHandle_ (hData) 
  
  ProcedureReturn Bytes.l 
EndProcedure 

Result.s = Space(63000) 
If DownloadToMem ( "http://monsite.com/index.php?varA=lalala&varB=lululoro", @Result, 63000 )
 debug  Result
Endif

Re: download http to memory

Publié : ven. 06/nov./2009 16:29
par Fred
A moins que tu aies une connexion internet qui fasse le meme debit de ton disque, je vois pas où sera le gain de perf :). Mais je note, ca pourrait etre utile.

Re: download http to memory

Publié : ven. 06/nov./2009 16:57
par Thyphoon
Fred a écrit :A moins que tu aies une connexion internet qui fasse le meme debit de ton disque, je vois pas où sera le gain de perf :). Mais je note, ca pourrait etre utile.
oui c'est vrai ! :mrgreen: mais ça peut être aussi interessant lorsqu'une aplication s'execute sur un disque en Read Only.... C'est mon cas au boulot impossible d'écrire ou que ce soit ! :mrgreen: