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
|
Option Compare Database
' -------------------------------------------------------------------
' Fonction DownloadHttpFile
'
' Arguments :
' [E] strUrl Adresse web fichier à télécharger
' [E] strFichierLocal Fichier local
'
' Valeur renvoyée : Statut (Entier long) http
' -------------------------------------------------------------------
Function DownloadHttpFile(strUrl As String, _
strFichierLocal As String) As Long
Dim wq As WinHttp.WinHttpRequest
Dim lgStatus As Long, strStatusText As String
Dim ff As Integer, byArray() As Byte
' Nouvelle requête HTTP
Set wq = New WinHttpRequest
wq.Open "GET", strUrl
' Exécution requête HTTP
wq.Send
' Code et texte de retour de la requête http
lgStatus = wq.Status
strStatusText = wq.StatusText
' Si OK sauvegarder dans fichier local
If wq.Status = 200 Then
ff = FreeFile()
byArray() = wq.ResponseBody
If Len(Dir(strFichierLocal)) > 0 Then Kill strFichierLocal
' Ecrire dans fichier
Open strFichierLocal For Binary As ff
Put #ff, , byArray()
Close #ff
Set wq = Nothing
End If
' Retourne Statut de la requête HTTP
DownloadHttpFile = lgStatus
End Function |
Partager