|
Voici un script qui permet d'installer Firefox 3.0.10 sans assistance
en Kixtart.
Le script détecte s'il y a déjà une version de VLC et tente de la
désinstaller en ligne de commande.
Paramètre de ligne de commande pour
une installation silentieuse : "Firefox Setup 3.0.10.exe /S"
Paramètre de ligne de commande pour une désinstallation silentieuse :
%Dossier_d_install%\uninstall\helper.exe /S
Principe
Mettre les 3 fichiers suivants dans le même
dossier :
Firefox Setup 3.0.10.exe : fichier
d'installation
disponible au téléchargement sur ce site : http://www.mozilla-europe.org/fr/firefox/
install.bat : décrit ci-dessous
Firefox Setup 3.0.10.kix : décrit ci-dessous
Pour installer Firefox Setup 3.0.10 de
manière silencieuse :
double cliquer sur install.bat
Détail
des scripts nécessaires
Contenu du fichier install.bat
Prompt $H
cls
@echo OFF
@echo ................................
@echo INSTALLATION DE Firefox 3.0.10
@echo JEAN-RENE DANIS 02/05/09
@echo ................................
IF NOT EXIST %WINDIR%\system32\kix32.exe (
@echo
......................................................................
@echo CE SCRIPT NECESSITE LA PRESENCE DU
FICHIER %WINDIR%\system32\kix32.exe
@echo VOUS POUVEZ LE TELECHARGER ET LE
COPIER A PARTIR DU SITE WEB :
@echo www.kixtart.org
@echo
......................................................................
pause
) ELSE (
@echo ON
kix32.exe "Firefox Setup 3.0.10.kix"
)
Prompt
|
Contenu du Firefox Setup 3.0.10.kix
(télécharger ce
script en pdf couleur ici)
; installation de Firefox 3.0.10 à partir du fichier Firefox Setup 3.0.10.exe ; Désinstallation de Firefox 2 s'il est déjà installé ; JEAN-RENE DANIS 02/05/2009
;Liste des variable(s) ;variable qui définit l'emplacement du fichier log $DossierDeLog = "%systemdrive%\install\log\"
;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
;determine le chemin du burreau de tous les utilisateurs $ALLUSERBUREAU=readvalue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Common Desktop") ? "Chemin du bureau : " + $ALLUSERBUREAU
;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
;Verifie si le programme est déjà installé $CleRegistre = KeyExist("HKLM\SOFTWARE\Mozilla\Mozilla Firefox") IF $CleRegistre
? "Une clé de registre Firefox a été trouvé, lecture des informations :
dossier d'installation et version existante de FireFox" $VersionExistant = READVALUE ("HKLM\SOFTWARE\Mozilla\Mozilla Firefox", "CurrentVersion")
$DossierInstall = READVALUE ("HKLM\SOFTWARE\Mozilla\Mozilla
Firefox\$VersionExistant\Main", "Install Directory") $FichierEXE = READVALUE ("HKLM\SOFTWARE\Mozilla\Mozilla Firefox\$VersionExistant\Main", "PathToExe")
$DossierUninstall = READVALUE ("HKLM\SOFTWARE\Mozilla\Mozilla
Firefox\$VersionExistant\Uninstall", "Uninstall Log Folder") IF EXIST ($FichierEXE) ? "Une version est installée : $DossierInstall : $VersionExistant" ENDIF ELSE ? "Le programme ne semble pas être déjà installé." ? "Le script d'installation peut continuer" ENDIF
;Tentative de désinstallation de l'ancienne version IF EXIST ($FichierEXE) ? "Le programme est déjà installé : tentative de déinstallation automatique" IF EXIST ("$DossierUninstall\helper.exe") ; désinstallation du programme $commande = '"$DossierUninstall\helper.exe" /S' ? $commande shell '%COMSPEC% /c ' + $commande IF @ERROR <> 0 ? "Erreur n° " + @ERROR ? "La désinstallation a échouée : il faut faire une désinstallation manuelle" GOTO "finerreur" ENDIF ENDIF ; attends la fin de la désinstallation $UninstallExist = 0 WHILE $UninstallExist = 0 sleep 5 IF NOT EXIST ("$DossierInstall\helper.exe") $UninstallExist = 1 ENDIF LOOP sleep 5 IF EXIST ("$ALLUSERPRG\Mozilla Firefox") ;effacement d'un dossier du menu démarrer DELPROGRAMGROUP ("Mozilla Firefox",1) IF NOT EXIST ("$ALLUSERPRG\Mozilla Firefox") ? "Le dossier : $ALLUSERPRG\Mozilla Firefox a été supprimé" ELSE
? "Le dossier : $ALLUSERPRG\Mozilla
Firefox n'a pas été supprimé complétement" ENDIF ENDIF IF EXIST ("$ALLUSERPRG\Utilitaires\Mozilla Firefox") MOVE "$ALLUSERPRG\Utilitaires\Mozilla Firefox\" "$ALLUSERPRG\Mozilla Firefox\" DELPROGRAMGROUP ("Mozilla Firefox",1) IF NOT EXIST ("$ALLUSERPRG\Mozilla Firefox") ? "Le dossier : $ALLUSERPRG\Utilitaires\Mozilla Firefox a été supprimé" ELSE
? "Le dossier : $ALLUSERPRG\Mozilla Firefox
ou $ALLUSERPRG\Utilitaires\Mozilla Firefox n'a pas été supprimé
complétement" ENDIF ENDIF ELSE ? "Le programme n'est pas déjà installé : lancement de l'installation." ENDIF
cd @SCRIPTDIR\
;installation du programme $commande = '"Firefox Setup 3.0.10.exe" /S' ? $commande shell '%COMSPEC% /c ' + $commande IF @ERROR <> 0 ? "Erreur n° " + @ERROR GOTO "finerreur" ENDIF
;Si le dossier "menu démarrer\Utilitaires" n'existe : le créer IF ADDPROGRAMGROUP ("Utilitaires",1) = 0 ? "Dossier Utilitaires créé ou exist déjà" ELSE ? "Erreur création dossier Utilitaires" GOTO "Finerreur" ENDIF
;Déplacement du raccourci dans dossier "menu démarrer\utilitaires" ? "Organisation des raccourcis" MOVE $ALLUSERPRG + '\Mozilla Firefox' $ALLUSERPRG + "\Utilitaires\Mozilla Firefox\"
;efface du raccourci sur le bureau del "$ALLUSERBUREAU\Mozilla Firefox.lnk"
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("")
|
Vous pouvez poster vos commentaires sur mon blog :
http://installation-silencieuse.blogspot.com
|