;installation de PhotoFiltre 6.3.2 à partir du fichier PhotoFiltre.zip
;JEAN-RENE DANIS 14/11/08
;Modification le 24/11/08 :
;Ajout du switch /s à la ligne "COPY $dossierprov "$PRGDIR\Photofiltre\" /s"
;Pour copier aussi les sous-répertoires de l'application PhotoFiltre
;Liste des variable(s)
;variable qui définit l'emplacement du fichier log
$DossierDeLog = "%systemdrive%\install\log\"
;variable qui définit la destination temporaire :
$dossierprov = '%systemdrive%\install\PhotoFiltre632\'
;variable qui définit le dossier de 7Zip ou se trouve 7z.exe :
$SEI_7Z = '%SYSTEMDrive%\Program Files\7-Zip'
;Création du dossier pour mettre le fichier log si ce dossier n'existe pas
IF NOT EXIST ($DossierDeLog)
MD $DossierDeLog
ENDIF
;Ouverture du fichier log et redirection des messages
IF RedirectOutput($DossierDeLog + @SCRIPTNAME + ".txt") = 0
?? "Ouverture de " + @SCRIPTNAME + " à " + @TIME
ELSE
? "Impossible de créer le fichier log"
GOTO "finerreur"
ENDIF
cd @SCRIPTDIR\
;determine le chemin du menu démarrer\programmes de tous les utilisateurs
;a test en 64 bits
$PRGDIR=readvalue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion","ProgramFilesDir")
? "Chemin des programmes : " + $PRGDIR
;determine le chemin du menu démarrer\programmes de tous les utilisateurs
$ALLUSERPRG=readvalue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Common Programs")
? "Chemin du menu démarrer\programmes : " + $ALLUSERPRG
;décompression d'un fichier
$fichieradecomp = 'PhotoFiltre.zip'
$destinationdeladecomp = $dossierprov
$commande='"$SEI_7Z\7z.exe" x -o$destinationdeladecomp $fichieradecomp'
? $commande
shell '%COMSPEC% /c ' + $commande
IF @ERROR <> 0
? "Erreur n° " + @ERROR
GOTO "finerreur"
ENDIF
;Copie d'un dossier
COPY $dossierprov "$PRGDIR\Photofiltre\" /s
;Si le dossier "menu démarrer\Utilitaires" n'existe : le créer
If AddProgramGroup("Utilitaires", 1) = 0
? "Dossier Menu démarrer\Utilitaires créé...."
Endif
;création du raccourci
IF ADDPROGRAMITEM ('$PRGDIR\Photofiltre\PhotoFiltre.exe', "PhotoFiltre", "", 0, "",0,0) = 0
? "Raccourci PhotoFiltre créé...."
Endif
;effacement d'un dossier
$dossierasupprimer = $dossierprov
del $dossierasupprimer + "\*.*" /c /f /s
rd $dossierasupprimer /s
IF NOT EXIST ($dossierasupprimer)
? "Le dossier : " + $dossierasupprimer + " a été supprimé"
ELSE
? "Le dossier : " + $dossierasupprimer + " n'a pas été supprimé complétement"
ENDIF
GOTO "fin"
;label de fin avec erreurs
:finerreur
? "fin du script d'installation : erreur"
;Ouverture du fichier log pour signaler la présence d'erreurs
IF RedirectOutput($DossierDeLog + "ERREUR_" + @SCRIPTNAME +".txt") = 0
?? "Ouverture de erreur_" + @SCRIPTNAME + " à " + @TIME
? "le script d'installation à rencontrer des erreurs : consulter le fichier log :"
? $DossierDeLog + @SCRIPTNAME +".txt"
ENDIF
sleep 5
;label de fin sans erreurs
:fin
? "fin du script d'installation"
;annule la redirection vers un fichier
RedirectOutput("")
|