Hello !
Depuis quand on passe par un navigateur pour traiter du contenu web depuis un programme? surtout par un navigateur comme IE? ^^
Bref, je ne suis pas d'accord du tout avec la façon de faire de Legend, je te conseille plutot d'utiliser les fonctions INet de base. Voici un exemple de script :
Code : Tout sélectionner
; Téléchargement du code source
FileClose(FileOpen($destination,10))
Local $flux = InetGet($urlSource, $destination,1,1), $size = 0
Do
Sleep(200)
If $size = 0 Then
$size = Number(InetGetInfo($flux,1))
Else
; Affiche le pourcentage d'avancement du téléchargement
Local $pourcentage = 100*InetGetInfo($flux,0)/$size
;~ setProgress($pourcentage,2,1)
EndIf
Until $FORCE_STOP Or $STOP Or InetGetInfo($flux, 2)
Local $donnees = InetGetInfo($flux)
InetClose($flux)
Les données reçues sont dans le fichier $destination, les données relatives au téléchargement (échec, état, code d'erreur) sont dans le tableau $donnees. la fonction setProgress($valeur, $decoupageMax,$decoupageIndex) me permet de modifier le remplissage d'une progressBar pendant le téléchargement.
Sinon, juste une remarque. Si tu as des données un tant soit peu structurée, utilise un fichier XML ou INI; avec des fonctions spécifiques comme $XML.SelectNodes/$XML.GetAttribute ou IniRead/IniWrite. Plutôt que de faire des FileRead et compagnie, avec des structures bancales et des séparateurs arbitraires.
Je te poste tout de même le code de mon module, ce dernier en fait n'a rien à voir avec le domaine des jeux, puisqu'il ne s'applique qu'au conteneur.
A bientôt !
PS: Il s'agit d'une version en cours de développement, il se peut qu'il présente des bugs, notamment à l'affichage de l'avancement dans la progressBar. Et pour que tu puisses le tester sans plantage majeur, il est accompagné de son icone et de la dll 7Zip (puisque les fichiers téléchargés sont des zip à décompresser).