|
Voici un script qui permet d'installer le driver TouchPad pour un
ordinateur portable, en fonction du model et sans assistance en Kixtart. Ce script test le model du PC et install de driver correspondant. Dans cet exemple je très 3 types d'ordinateur portable et 3 drivers. Principe
Mettre les 6 fichiers suivants dans le même
dossier :
install.bat : décrit ci-dessous DriversTouchPad.kix : décrit ci-dessous R113813.EXE : drivers de touchpad pour ordinateur portable Latitude D810 qui peuvent être télécharger
sur ce site : http://www.dell.fr/ R165804.EXE : drivers de touchpad pour ordinateur portable Latitude D820 ou D830 qui peuvent être télécharger
sur ce site : http://www.dell.fr/ R202446.EXE : drivers de touchpad pour ordinateur portable Latitude E6500 qui peuvent être télécharger
sur ce site : http://www.dell.fr/ WMIQuery.udf : fonction Kixtart qui récupère des information sur le matériel
Pour installer le driver TouchPad pour un ordinateur portable en fonction du model : double cliquer sur install.bat
Détail
des scripts nécessaires
Contenu du fichier install.bat
Prompt $H cls @echo OFF
@echo .......................................................... @echo INSTALLATION DES TOUCHPAD EN FONCTION DU MODEL DU PORTABLE @echo JEAN-RENE DANIS 29/01/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 DriversTouchPad.kix ) Prompt
|
Contenu du fichier DriversTouchPad.kix (télécharger ce
script en pdf couleur ici)
;installation des drivers touchpad à partir du model de l'ordinateur et ;d'une bibliothèque de fichiers des drivers touchpad ;JEAN-RENE DANIS 29/01/09 www.jrdanis.com
;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\Touchpad' ;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\
;verifie la présence de 7zip IF EXIST ($SEI_7Z) ? "$SEI_7Z existe." ELSE ? "L'installation necessite un logiciel de décompression." ? "$SEI_7Z n'esiste pas, installez le puis recommencer." GOTO "finerreur" ENDIF
;Chargement d'une fonction : WMIQuery ;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 = "WMIQuery.udf" IF $existWMIQuery = "exist" ? "La fonction " + $emplacementfonction + " a déjà été chargée" ELSE IF EXIST ($emplacementfonction) CALL $emplacementfonction $existWMIQuery = "exist" ? "La fonction " + $emplacementfonction + " a été chargée" ELSE ? "La fonction " + $emplacementfonction + " n'a pas été trouvée" ENDIF ENDIF
;Récupère le model de l'ordinateur grace à la fonction WMIQuery $ModelDeOrdinateur = WMIQuery("Model","Win32_ComputerSystem")[0] ? "Le model de l'ordinateur est : [$ModelDeOrdinateur]"
;Execution de l'installation du driver audio en fonction du model. Select Case $ModelDeOrdinateur = "Satellite Pro A40"
Case $ModelDeOrdinateur = "Latitude
D810
" $NomduFichierDriver = "R113813.exe"
? "installation du drivers touchpad à partir du
fichier : $NomduFichierDriver pour 2000, XP,ou Vista" ;Décompression du fichier $fichieradecomp = '$NomduFichierDriver' $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 ;Lancement du programme d'installation silencieuse $commande="$dossierprov\setup.exe /S" ? $commande shell '%COMSPEC% /c ' + $commande IF @ERROR <> 0 ? "Erreur n° " + @ERROR GOTO "finerreur" ENDIF
Case $ModelDeOrdinateur = "Latitude
D830
" OR $ModelDeOrdinateur = "Latitude
D820
" $NomduFichierDriver = "R165804.exe"
? "installation du drivers touchpad à partir du
fichier : $NomduFichierDriver pour 2000, XP,ou Vista" ;Décompression du fichier $fichieradecomp = '$NomduFichierDriver' $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 ;Lancement du programme d'installation silencieuse $commande="$dossierprov\setup.exe /S" ? $commande shell '%COMSPEC% /c ' + $commande IF @ERROR <> 0 ? "Erreur n° " + @ERROR GOTO "finerreur" ENDIF
Case $ModelDeOrdinateur = "Latitude
E6500
" $NomduFichierDriver = "R202446.exe"
? "installation du drivers touchpad à partir du
fichier : $NomduFichierDriver pour 2000, XP,ou Vista" ;Décompression du fichier $fichieradecomp = '$NomduFichierDriver' $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 ;Lancement du programme d'installation silencieuse $commande="$dossierprov\setup.exe /S" ? $commande shell '%COMSPEC% /c ' + $commande IF @ERROR <> 0 ? "Erreur n° " + @ERROR GOTO "finerreur" ENDIF Case $ModelDeOrdinateur = "hp compaq nx9105 (DU430EA#ABF)" ?"Pas de drivers dispo pour model nx9105" GOTO "fin" Case 1 ; Pour tous les autres cas ?"Pas de drivers audio dispo pour ce model : $ModelDeOrdinateur" GOTO "fin" EndSelect
;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("")
|
Vous pouvez poster vos commentaires sur mon blog :
http://installation-silencieuse.blogspot.com
|