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 47 48 49 50 51 52 53 54 55 56
| Option Explicit
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, ByVal strUrl As String, _
ByVal strSaveToFile As String, ByVal dwReserved As Long, _
ByVal lpfnCallBack As Long) As Long
Public Function TelechargerURL(strUrl As String, strFile As String, _
Optional ByRef strErrDesc As String) As Boolean
Const CNULL = 0&, S_OK = 0&
Dim lgRetVal As Long
TelechargerURL = False
strErrDesc = ""
lgRetVal = URLDownloadToFile(CNULL, strUrl, strFile, 0, CNULL)
Select Case lgRetVal
Case S_OK
TelechargerURL = True
Case &H800C0002
strErrDesc = "URL non valide."
Case &H800C0003
strErrDesc = "Aucune session internet n'a pu être établie."
Case &H800C0004
strErrDesc = "Impossible de se connecter au serveur cible."
Case &H800C0005
strErrDesc = "Serveur ou proxy non trouvé."
Case &H800C0006
strErrDesc = "Le système ne trouve pas l'objet spécifié."
Case &H800C0007
strErrDesc = "Aucune donnée n'est disponible pour la ressource spécifiée."
Case &H800C0008
strErrDesc = "Échec du téléchargement de la ressource spécifiée."
Case &H800C0009
strErrDesc = "Authentification requise pour accéder à cette ressource."
Case &H800C000A
strErrDesc = "Le serveur n'a pas pu reconnaître le type mime spécifié."
Case &H800C000B
strErrDesc = "Délai de l'opération expiré."
Case &H800C000C
strErrDesc = "Le serveur n'a pas compris la requête, ou la requête n'est pas valide."
Case &H800C000D
strErrDesc = "Le protocole spécifié est inconnu."
Case &H800C000E
strErrDesc = "Un problème de sécurité s'est produit."
Case &H800C000F
strErrDesc = "Le système n'a pas pu charger les données requises."
Case &H800C0010
strErrDesc = "L'objet n'a pas pu être instancié."
Case &H800C0014
strErrDesc = "Un problème de redirection s'est produit"
Case Else
strErrDesc = "Erreur 0x" & Hex(lgRetVal) & " (" & lgRetVal & ")"
End Select
End Function |
Partager