On me demande de créer un script pour mettre à jour des exécutables dans des répertoires différents sur des serveurs en faisant un contrôle de version.
pour être plus clair je dois copier les exe d'un point A vers un point B
Dans mon test j'ai mis le point A sur mon disque et le B sur le serveur.
Les chemins des exe sont référencés dans un fichier ini pour ne pas modifier le script.
Le script fonctionne très bien, mais j'ai plusieurs Exe à mettre à jour et je dois donc répéter ce script pour chaque mise à jour. Le script va alors très très long.
Je me demandais donc si il existait une commande qui permettrait de le raccourcir sous forme de boucle sachant que les chemins des exe sont tous différents.
Je suis un peu novice, soyez indulgent et merci pour votre aide si vous avez réussi à comprendre ce que j'ai ecrit.
Code : Tout sélectionner
;Mise en variable du chemin du INI
$chemin_ini = "chemin du fichier ini"
$Chemin_Server = IniRead ($chemin_ini, "Section", "Key1", "not found")
$chemin_PC = IniRead ($chemin_ini, "Section", "Key2", "notfound")
$executable = IniRead ($chemin_ini, "Section", "Key3", "notfound")
; mise en variable de la version de l'executable
$ver_install = FileGetVersion($Chemin_Pc & $executable)
$ver_server = FileGetVersion($Chemin_Server & $executable)
; Vérification si le fichier existe
If not FileExists($Chemin_Server & $executable) Then
FileCopy ( $Chemin_Pc & $executable, $Chemin_Server , 1)
MsgBox(4096,"", "Mise à jour fichier effectuée, relancer l'application1")
Else
;vérification de la version de l'exe et copie si la version n'est pas à jour.
IF $ver_install <= $ver_server Then
MsgBox(4096,"", "Mise à jour fichier déjà effectuée, vous pouvez relancer l'application2")
Else
FileCopy ( $Chemin_Pc & $executable, $Chemin_Server , 1)
MsgBox(4096,"", "Mise à jour fichier effectuée, relancer l'application3")
Endif
Endif
Code : Tout sélectionner
[MDF]
chemin_server=\\serveur\partage\etc ...
chemin_PC= C:\répertoire
executable = file.exe