Sous l'air entrainant de D. 1.29 en -2,0 , Je vous rédige de tutoriel sur les mises a jour
Je ne vous ferait pas d'intro de 3/4 d'heure, On va entrer dans le vif du sujet tout de suite
Loading Image A quoi ça sers les M.A.J?
Pour ceux qui n'ont pas de FTP, Passez a la partie Socket, Ou allez d'abord chercher un petit FTP (Ou un ftp local pour les tests)
Les mises a jour (Ou Maj) Servent mettre un programme a jour (Logique me direz-vous) Mais, Des fois, Aussi a faire des Add-ons pour certains programmes.
Par exemple, Vous avez vôtre joli programme, tout beau, Tout propre, et vous décidez que les mises a jour devront être automatiques.
Tout d'abord, on va commencer a faire une Mise a jour Via FTP (File Transfert Protocol) C'est ce qui est utilisé la plupart du temps pour les mises a jour, Le rafraichissement de CGU , Ou pour un programme Dynamique .
Notez que Avec Autoit, C'est très facile de mettre un programme a jour, Il suffit d'une connexion a internet, et d'un peut de jugeote !
On va pas utiliser beaucoup de fonctions dans ce tutoriel, On va juste utiliser Inetgetsource qui permets de regarder la source d'un fichier sur le net .
Bon, Vous avez vôtre FTP, Vôtre fichier en ligne avec votre version...
Maintenant, il faut vérifier la version de vôtre programme pour savoir si il est a jour.
Donc, On va lire dans votre fichier version (J'utilise plus souvent un fichier .data),
$version = fileread("version.data")
Maintenant on va vérifier le fichier de mise a jour qui est en ligne
Personnellement, Je ne sait pas utiliser les fichier .ini
Alors, Je fais a ma façon :
Mon fichier .data qui est en ligne contient 2 choses
La version, Et Mise a jour "majeur" ou "mineure"
ça donne ça :
1.29.1/min/www.votre lien de téléchargement.com
En premier, y'a la version
En deuxième l'importance de la maj (majeure ou mineure)
En 3ème, il y a vôtre lien de Download (Très utile si il y a plusieurs Mises a jour)
Le code est un peut plus compliqué,
On va utiliser :
Cliquez pour révéler
Cliquez pour masquer
StringSplit,
Inetget
@inetgetbytesread
@inetgetactive
While
WEnd
C'est tout.
Maintenant, Passons au code
Tout d'abord, on lit dans le fichier qui contient la version
$version = fileread("version.data")
Maintenant, On lit dans le fichier qui contiens la version en ligne
$en_ligne = Inetgetsource("www.lien_de_votre_ftp/version.data")
On coupe ce qu'on a trouvé :
$split = stringsplit("$en_ligne", "/")
Et on fais tout notre bordel ^^ (code commenté)
Cliquez pour révéler
Cliquez pour masquer
if $split[1] > $version then ;Si la version en ligne est superieure a la version actuelle.
if $split[2] = "maj" then;Si la mise a jour est majeure.
Inetget($split[3]);On télécharge
$size = inetgetsize($split[3]);On regarde le poids du fichier
While @inetgetactive;La boucle reste tant que le téléchargement est actif
TrayTip("Téléchargement...", @inetgetbytesread&" Bytes téléchargés sur "& $size & "Bytes");On informe La personne d'ou en est le téléchargement
sleep(250);On attend, Sinon, ça fais lagguer le PC
WEnd; --> @inetgetactive
msgbox(0, "", "Mise a jour terminée")
elseif $split[2] = "min" Then ; si la maj est mineure
If inputbox("", "Voulez-vous télécharger la mise a jour ? "&@crlf&"Version actuelle : "& $version & @crlf & "Version en ligne :"&$split[1]&@crlf&"oui/non") = "oui" Then
Inetget($split[3]);On télécharge
$size = inetgetsize($split[3]);On regarde le poids du fichier
While @inetgetactive;La boucle reste tant que le téléchargement est actif
TrayTip("Téléchargement...", @inetgetbytesread&" Bytes téléchargés sur "& $size & "Bytes");On informe La personne d'ou en est le téléchargement
sleep(250);On attend, Sinon, ça fais lagguer le PC
WEnd; --> @inetgetactive
msgbox(0, "", "Mise a jour terminée")
Else
msgbox(0,"", "Ok.")
EndIf
EndIf ; --> si c'est maj ou min
Else;Si la version actuelle est la même ou superieure a celle en ligne
msgbox(0, "", "Vous êtes a jour"); on est a jour
exit 0 ; on sors
endif; Split > version
Attention, Code a bien lire !
Il a l'air bordélique comme ça, Mais, Il est commenté, et si vous LISEZ BIEN, Vous comprendrez toutes les fonctions.
Le tuto sur les MAJ en Socket viendra plus tard ;)
Enjoy !