Télécharge un fichier depuis internet en utilisant le protocole HTTP, HTTPS ou FTP.
InetGet ( "URL", "filename" [, options = 0 [, background = 0]] )
URL | URL du fichier à télécharger. Voir Remarques ci-dessous. |
filename | Nom complet du fichier local dans lequel télécharger. |
options | [optionnel] $INET_LOCALCACHE (0) = Obtient le fichier depuis le cache local si disponible (défaut). $INET_FORCERELOAD (1) = Force le rechargement depuis le site distant. $INET_IGNORESSL (2) = Ignore toutes les erreurs SSL (avec connexions HTTPS). $INET_ASCIITRANSFER (4) = Utilise ASCII lors du transfert de fichiers avec le protocole FTP (Ne peut pas être combiné avec le flag $INET_BINARYTRANSFER (8)). $INET_BINARYTRANSFER (8) = Utilise BINARY lors du transfert de fichiers avec le protocole FTP (Ne peut pas être combiné avec le flag $INET_ASCIITRANSFER (4)). Ceci est le mode de transfert par défaut si aucun n'est fourni. $INET_FORCEBYPASS (16) = Force la connexion en ligne par contournement (Voir Remarques). Ces constantes sont définies dans InetConstants.au3 |
background | [optionnel] $INET_DOWNLOADWAIT (0) = Attend que le téléchargement soit terminé avant de continuer (par défaut). $INET_DOWNLOADBACKGROUND (1) = Retourne immédiatement et télécharge en arrière-plan (Voir Remarques). Les constantes sont définies dans InetConstants.au3 |
Succès: | La valeur de retour change si le téléchargement est en arrière-plan ou pas: Arrière-plan: Retourne un handle. Attente: Retourne le nombre d'octets téléchargés. |
Echec: | Arrière-plan: Retourne un handle. Attente: Retourne 0 et définit @error <> 0. |
FtpSetProxy, HttpSetProxy, HttpSetUserAgent, InetClose, InetGetInfo, InetGetSize, InetRead
#include <InetConstants.au3> #include <MsgBoxConstants.au3> #include <WinAPIFiles.au3> ; Télécharge un fichier en arrière-plan. ; Attend la fin du téléchargement. Example() Func Example() ; Enregistre le fichier téléchargé dans le dossier temporaire. Local $sFilePath = _WinAPI_GetTempFileName(@TempDir) ; Télécharge le fichier en arrière-plan avec l'option choisie 'forcer le chargement du site distant'. Local $hDownload = InetGet("http://www.autoitscript.com/autoit3/files/beta/update.dat", $sFilePath, $INET_FORCERELOAD, $INET_DOWNLOADBACKGROUND) ; Attend la fin du téléchargement en vérifiant si la 2ième valeur de l'index de InetGetInfo retourne True. Do Sleep(250) Until InetGetInfo($hDownload, $INET_DOWNLOADCOMPLETE) ; Obtient le nombre total d'octets reçus et la taille du fichier. Local $iBytesSize = InetGetInfo($hDownload, $INET_DOWNLOADREAD) Local $iFileSize = FileGetSize($sFilePath) ; Ferme le handle retourné par InetGet. InetClose($hDownload) ; Affiche les détails sur le nombre total d'octets lus et la taille du fichier. MsgBox($MB_SYSTEMMODAL, "", "Taille totale téléchargée: " & $iBytesSize & @CRLF & _ "Taille du fichier: " & $iFileSize) ; Supprime le fichier. FileDelete($sFilePath) EndFunc ;==>Example
#include <InetConstants.au3> #include <MsgBoxConstants.au3> #include <WinAPIFiles.au3> ; Télécharge un fichier en arrière-plan. ; Attend la fin du téléchargement. Example() Func Example() ; Enregistre le fichier téléchargé dans le dossier temporaire. Local $sFilePath = _WinAPI_GetTempFileName(@TempDir) ; Télécharge le fichier en attendant la fin. L'option "obtenir le fichier du cache local" est choisie. Local $iBytesSize = InetGet("http://www.autoitscript.com/autoit3/files/beta/update.dat", $sFilePath, $INET_FORCERELOAD) ; Obtient la taille du fichier. Local $iFileSize = FileGetSize($sFilePath) ; Affiche les détails sur le nombre total d'octets lus et la taille du fichier. MsgBox($MB_SYSTEMMODAL, "", "Taille totale téléchargée: " & $iBytesSize & @CRLF & _ "Taille du fichier: " & $iFileSize) ; Supprime le fichier. FileDelete($sFilePath) EndFunc ;==>Example