|
Voici un script qui permet d'installer Firefox 3.5
sans
assistance en Kixtart. Ce script s'occupe aussi de désinstaller l'ancienne version de Firefox si elle est installée.
Ligne de commande pour l'installation silencieuse
: "Firefox Setup 3.5" -MS Ligne de commande pour désinstaller une ancienne version : "...\Mozilla Firefox\uninstall\helper.exe" /S
Prérequis
Le fichier kix32.exe doit être préalablement
copié sur l'ordinateur. En principe le fichier kix32.exe est copié
dans le dossier C:\Windows\System32.
Le fichier kix32.exe peut être téléchargé sur le site : www.kixtart.org
Principe
Mettre les 3 fichiers suivants dans le même
dossier :
Firefox Setup 3.5.exe
(ce fichier peut être télechargé sur ce site : http://www.mozilla-europe.org/fr/firefox/
)
install.bat : fichier batch, décrit ci-dessous
firefox_3.5.kix : script kixtart, décrit ci-dessous
Détail
des scripts nécessaires
Contenu du fichier install.bat
Prompt $H cls @echo OFF
@echo ......................... @echo
INSTALLATION DE Firefox 3.5 @echo JEAN-RENE DANIS 01/07/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 Firefox_3.5.kix ) Prompt |
Contenu du fichier firefox_3.5.kix
(télécharger ce
script en pdf couleur ici)
; installation de Firefox 3.5 à partir du fichier Firefox Setup 3.5.exe ; Désinstallation de Firefox 2.x ou 3.x s'il est déjà installé ; JEAN-RENE DANIS 01/07/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.5" -MS' ? $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
|