Connexion
Qui est en ligne ?
Il y a en tout 2 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 2 Invités Aucun
Le record du nombre d'utilisateurs en ligne est de 29 le Mer 29 Jan 2020, 10:53
Sujets les plus vus
Derniers sujets
[VBS/BAT/PowerShell] Faire un système d'update automatique
Page 1 sur 1
[VBS/BAT/PowerShell] Faire un système d'update automatique
Je vais vous expliquer aujourd'hui comment faire un système d'update automatique pour vos codes.
Et sans passer par le FTP (fonctionnelle mais trop long).
Le principe :
On va placer sur notre serveur dans un repertoire nommé version un fichier version.txt (ou html) contenant juste la valeur de la dernière version de notre programme :
version.txt
On aura donc une URL :
http://VotreHost/version/version.txt
qu'il nous suffit d'aller lire avec une méthode GET.
Comme les exemples sont plus parlant que les longs discours.
J'ai créer sur mon serveur un fichier version.txt et 1 version.html contenant les 2 la valeur 13 (pour 1.3)
Je vais créer une petite commande en VBS qui va récuperer cette valeur sur mon serveur dont l'url est :
http://ftpcrypt.byethost24.com/version/version.txt
ou
http://ftpcrypt.byethost24.com/version/version.html
GetVersion.vbs
Que vous pouvez tester tel quel, Il devrait vous ouvrir une message box avec la valeur 13 dedans.
Maintenant pour récuperer et tester cette valeur dans notre code BAT on va utiliser une simple boucle FOR qui appelle notre GetVersion.vbs
ainsi qu'un code Powershell pour faire le download direct (On pourrait le faire avec VBS également, mais il faut varier les plaisirs) :
Voilà vous pouves tester tout est fonctionnel. Et vous voyex que c'est hyper rapide pour récuperer le 13 sur le serveur (En FTP ça prendrait bien 3 fois plus de temps).
Il vous faut naturellement tenir à jour le numéro de version sur votre serveur ainsi que le programme actualisé.
Pour avoir toujours le même lien de download de la dernière version garder toujours le même nom pour votre programme.
Enjoy !!!
:ok:
Et sans passer par le FTP (fonctionnelle mais trop long).
Le principe :
On va placer sur notre serveur dans un repertoire nommé version un fichier version.txt (ou html) contenant juste la valeur de la dernière version de notre programme :
version.txt
13
On aura donc une URL :
http://VotreHost/version/version.txt
qu'il nous suffit d'aller lire avec une méthode GET.
Comme les exemples sont plus parlant que les longs discours.
J'ai créer sur mon serveur un fichier version.txt et 1 version.html contenant les 2 la valeur 13 (pour 1.3)
Je vais créer une petite commande en VBS qui va récuperer cette valeur sur mon serveur dont l'url est :
http://ftpcrypt.byethost24.com/version/version.txt
ou
http://ftpcrypt.byethost24.com/version/version.html
GetVersion.vbs
- Code:
Dim o
Set o = CreateObject("MSXML2.XMLHTTP")
o.open "GET", "http://ftpcrypt.byethost24.com/version/version.txt", False
o.send
wscript.echo o.responseText
Que vous pouvez tester tel quel, Il devrait vous ouvrir une message box avec la valeur 13 dedans.
Maintenant pour récuperer et tester cette valeur dans notre code BAT on va utiliser une simple boucle FOR qui appelle notre GetVersion.vbs
ainsi qu'un code Powershell pour faire le download direct (On pourrait le faire avec VBS également, mais il faut varier les plaisirs) :
- Code:
::TestGetVersion
::SachaDee 2015
@echo off
::On définie la version du programme en cours d'utilisation
set $versionAct=12
:: On récupère la dernière version disponible sur le serveur
:: en appelant notre VBS :
For /f %%a in ('cscript GetVersion.vbs') do set "$versionDisp=%%a"
Echo Version actuelle : %$VersionAct%
Echo Version Disponible : %$VersionDisp%
:: On test les 2 valeurs
If %$VersionDisp% GTR %$VersionAct% goto:update
echo Votre Version est à jour.
exit/b
:Update
set /p $R=Voulez vous t‚lecharger la version %$VersionDisp% [o/n] :
::Ici on fait le download direct grace à Powershell
if /i %$R%==o (
for /f "delims=:" %%a In ('findstr ^/Bn "@PS" %~nx0') do Set /A Line=%%a
for /f "delims=" %%x in ('more +%Line% %~nx0 ^| powershell -c -') do echo.)
if exist version13.txt Echo Version13.txt t‚lecharg‚ avec succes
exit/b
::Le code powershell pour le download direct
@PS
$client = new-object System.Net.WebClient
$client.DownloadFile("http://ftpcrypt.byethost24.com/download/version13.txt","version13.txt")
Voilà vous pouves tester tout est fonctionnel. Et vous voyex que c'est hyper rapide pour récuperer le 13 sur le serveur (En FTP ça prendrait bien 3 fois plus de temps).
Il vous faut naturellement tenir à jour le numéro de version sur votre serveur ainsi que le programme actualisé.
Pour avoir toujours le même lien de download de la dernière version garder toujours le même nom pour votre programme.
Enjoy !!!
:ok:
Sujets similaires
» [Batch Xoo.It] écriture automatique
» [BAT] Tout sur votre système
» [bat/powershell] remplacer un string
» [bat/powershell] Longueur d'un string
» [bat/powershell] Récuperer les dimensions (X,Y) d'une image
» [BAT] Tout sur votre système
» [bat/powershell] remplacer un string
» [bat/powershell] Longueur d'un string
» [bat/powershell] Récuperer les dimensions (X,Y) d'une image
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Ven 25 Déc 2015, 14:17 par Sachadee
» [devellopez] Formater une date en ligne Dos
Ven 31 Juil 2015, 10:40 par Dylan Gadacha
» Un super Tuto Batch de IniTScreen
Lun 08 Juin 2015, 12:16 par InitScreen
» Un code MATRIX sympa
Dim 12 Avr 2015, 14:27 par Sachadee
» [BAT/EXE] DresolChange changer la sesolution de l´écran
Mar 17 Mar 2015, 09:12 par Sachadee
» [EXE/bat] DpScript Código Delphi interpreter
Jeu 12 Mar 2015, 15:48 par Sachadee
» Externo SaveDlg com 2 kb
Dim 15 Fév 2015, 12:20 par Sachadee
» présentation
Dim 15 Fév 2015, 12:14 par Sachadee
» [developpez.com] Transcodage fichier vidéo si fichier déposé
Mar 03 Fév 2015, 01:02 par Sachadee