Unattended : Installation silencieuse de programmes
Lorsque l'on décide de créer un CD d'installation de XP qui va ajouter des programmes en plus du système d'exploitation, 2 critères sont importants :
-
Que l'installation soit totalement silencieuse
-
Que l'on puisse la lancer par une ligne de commande dans notre bat (ou dans le RunOnceEx, méthode plus esthétique...)
Pour le 1), il faut repérer les "commutateurs" (ou switchs). C'est quelques fois enfantin et d'autres très compliqué. La première chose à tenter est le lancement du programme d'installation par Démarrer > Exécuter : LeNomDeLinstalleur.exe suivi d'un commutateur d'aide "classique" tel que /? ou /help ou -help ou -?.
Pour le 2), le point important est que
l'on puisse faire attendre le BAT le
temps que l'installation se fasse. La commande passée (dans
le bat ou le RunOnceEx) va être, par exemple, un :
start /wait
%systemdrive%\monappli\install.exe /silent /noreboot
Petit explication :
start /wait : lancer l'application et attendre sa fin.
%systemdrive% est une variable qui contient la lettre du lecteur système. Exemple : C:
\monappli\install.exe est le chemin de l'application telle qu'elle a été automatiquement recopiée depuis le CD vers le disque dur au début de l'installation. ($OEM$\$1\monappli\ sur le CD)
/silent /noreboot sont les commutateurs que vous avez trouvé pour cette application qui permettent de l'installer silencieusement et sans redémarrer.
Le piège, parce qu'il y en a un, c'est que quelques fois le programme d'installation se lance, décompacte d'autres fichiers, lance un autre exécutable, puis s'arrête... (c'est le cas de l'installation de DirectX 9c) rendant le contrôle au BAT qui va donc continuer son exécution !!! (et probablement provoquer des conflits avec d'autres installations)
Dans ce cas de figure, il faut "préparer" le terrain (ou tricher en ajoutant une attente). Dans l'exemple de DX9c, il faut décompacter le contenu de l'exécutable d'origine. C'est seulement en lançant un exécutable trouvé dans ces fichiers décompactés et avec les commutateurs adéquats qu'il vous sera possible de lancer son installation sans intervention et sans que la commande start /wait ne "rende la main" au batch avant la fin réelle de l'installation.
Pour notre exemple de DX9c, la commande
à passer (non documentée ou très
peu) sera la suivante :
start /wait
%systemdrive%\applis\DX9c\dxsetup.exe /silent
