Header image
Jean-René DANIS

 

   Retour à Script d'installation silencieuse                

  


Scripts d'installation silencieuse (silent install)
Adobe reader 9.0.0

 
Voici un script qui permet d'installer Adobe Reader 9.0.0 sans assistance en Kixtart.

Ligne de commande pour l'installation silencieuse : "AdbeRdr90_fr_FR.exe /sAll /rst"

 

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 6 fichiers suivants dans le même dossier :

AdbeRdr90_fr_FR.exe (ce fichier peut être télechargé sur ce site : http://www.adobe.com )
install.bat : fichier batch, décrit ci-dessous
AdbeRdr90.kix : script kixtart, décrit ci-dessous
adobe9.reg: fichier de registre, décrit ci-dessous
ShellCmd.udf : fonction Kixtart pour lancer des lignes de commande
GetExtFileProperties.udf : fonction Kixtart pour récuperer les attributs des fichiers

Pour installer Acrobate Reader 9.0.0 de manière silencieuse : double cliquer sur install.bat

 

Détail des scripts nécessaires

Contenu du fichier install.bat

Prompt $H
cls

@echo ...............................
@echo INSTALLATION DE AdbeRdr90_fr_FR
@echo JEAN-RENE DANIS 26/09/08
@echo ...............................

kix32 AdbeRdr90.kix

Contenu du fichier AdbeRdr90.kix (télécharger ce script en pdf couleur ici)

;installation de Acrobate Reader 9.00 à partir du fichier AdbeRdr90_fr_FR.exe
;JEAN-RENE DANIS 26-09-08

;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

;Chargement d'une fonction : ShellCMD
;Ce script charge une fonction sauf si elle a déjà été chargée.
;Verifier que le nom de la fonction à chargée est bien présent dans
;le nom de la variable $exist...des 2ieme et 7ieme lignes ci-dessou
$emplacementfonction = "ShellCmd.udf"
IF $existShellCMD = "exist"
? "La fonction " + $emplacementfonction + " a déjà été chargée"
ELSE
IF EXIST ($emplacementfonction)
CALL $emplacementfonction
$existShellCMD = "exist"
? "La fonction " + $emplacementfonction + " a été chargée"
ELSE
? "La fonction " + $emplacementfonction + " n'a pas été trouvée"
ENDIF
ENDIF

;Chargement d'une fonction : GetExtFileProperties
;Ce script charge une fonction sauf si elle a déjà été chargée.
;Verifier que le nom de la fonction à chargée est bien présent dans
;le nom de la variable $exist...des 2ieme et 7ieme lignes ci-dessou
$emplacementfonction = "GetExtFileProperties.udf"
IF $existGetExtFileProperties = "exist"
? "La fonction " + $emplacementfonction + " a déjà été chargée"
ELSE
IF EXIST ($emplacementfonction)
CALL $emplacementfonction
$existGetExtFileProperties = "exist"
? "La fonction " + $emplacementfonction + " a été chargée"
ELSE
? "La fonction " + $emplacementfonction + " n'a pas été trouvée"
ENDIF
ENDIF

;determine le dossier "program files 32 bits" en fonction de l'architecture du systeme d'exploitation
IF @ONWOW64 = 1
$progx86 = "%SYSTEMDrive%\Program Files (x86)"
ELSE
$progx86 = "%SYSTEMDrive%\Program Files"
ENDIF
? "Dossier d'installation des programme 32bits :" + $progx86

;Verifie si le programme est déjà installé et affiche sa version
$prgatester = $progx86 + "\Adobe\Reader 9.0\Reader\acrord32.exe"
IF EXIST ($prgatester)
IF @PRODUCTTYPE = "Windows Vista Business Edition"
? "Le programme est déjà installé à la version : " + GetExtFileProperties($prgatester,145)
ELSE
? "Le programme est déjà installé à la version : " + GetExtFileProperties($prgatester,37)
ENDIF
GOTO "finerreur"
ELSE
? "Le programme n'est pas déjà installé : lancement de l'installation."
ENDIF

;verifie si le systeme d'exploitation est en anglais ou en francais
IF EXIST ("%SYSTEMDrive%\Documents and Settings\Administrator")
$LNGSEI="GB"
ELSE
$LNGSEI="FR"
ENDIF
? "Langue : " + $LNGSEI

;determine le chemin du dossier du bureau en fonction de la langue et du system d'exploitation
Select
Case @PRODUCTTYPE = "Windows 2000 Professional"
$ALLUSERBUREAU = "%ALLUSERSPROFILE%\bureau"
Case @PRODUCTTYPE = "Windows XP Professional"
IF $LNGSEI="FR"
$ALLUSERBUREAU = "%ALLUSERSPROFILE%\bureau"
ELSE
IF $LNGSEI="GB"
$ALLUSERBUREAU = "%ALLUSERSPROFILE%\Desktop"
ENDIF
ENDIF
Case @PRODUCTTYPE = "Windows Vista Business Edition"
$ALLUSERBUREAU = "%public%\desktop"
EndSelect
? "Chemin du bureau : " + $ALLUSERBUREAU

? "Installation du programme"
$cmd_sei = 'AdbeRdr90_fr_FR.exe /sAll /rst'
? $cmd_sei
$codrec = shellcmd('"$cmd_sei"',0)
IF $codrec <> 0
? "Erreur n° " + $codrec
GOTO "finerreur"
ENDIF

;Application du fichier reg pour modifier la base de registre
$cmd_sei = 'regedit /s adobe9.reg'
? $cmd_sei
$codrec = shellcmd('"$cmd_sei"',0)
IF $codrec <> 0
? "Erreur n° " + $codrec
GOTO "finerreur"
ENDIF

;Suppression de la clé de registre Adobe Reader Speed Launcher pour liberer de la mémoire
$sup_cle = "HKLM\software\Microsoft\windows\currentversion\run"
$sup_valeur = "Adobe Reader Speed Launcher"
? "Suppresion de la clé " + $sup_cle + "\" + $sup_valeur
DELVALUE ($sup_cle, $sup_valeur)
IF @ERROR <> 0
? "Erreur n° " + @ERROR
GOTO "finerreur"
ENDIF

;Suppression du raccourci du bureau
$racc_bureau = "Adobe Reader 9.lnk"
? "Efface le raccourci : "+ $ALLUSERBUREAU + "\" + $racc_bureau
DEL $ALLUSERBUREAU + "\" + $racc_bureau

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"

Contenu du fichier adobe9.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\Acrobat Reader\9.0\AdobeViewer]
"EULA"=dword:00000001
"Launched"=dword:00000001

 

Vous pouvez poster vos commentaires sur mon blog : http://installation-silencieuse.blogspot.com