Skip to content
 

Installation silencieuse de Chrome

Avertissement

Cet article détaille la procédure d’installation silencieuse de Chrome destinée à s’inscrire dans le processus décrit ici, lequel vise à automatiser le déploiement d’un ensemble d’applications sur une machine tournant sous Windows.

Il n’en reste pas moins que cette procédure peut parfaitement s’appliquer de manière autonome.

Introduction

En bon français méfiant et ronchonneur que je suis (deux traits de caractères qui forgent sans conteste notre identité nationale et dont devraient se méfier ceusses qui nous gouvernent), je ne porte pas un amour inconsidéré à Big Google. Nonobstant, il faut bien reconnaître que dès lors que ces gens se penchent sur un problème, ils ont quelques talents à lui trouver des solutions pour le moins intéressantes. La simplicité de mise en oeuvre et d’utilisation qui semble leur être une idée directrice s’applique tout autant au mode de distribution de leurs logiciels.

Et pourtant, il aura fallu patienter jusqu’au mois d’août dernier pour que l’équipe des développeurs se décide enfin à publier une version aisément déployable. Il s’agit d’un package msi que vous pourrez trouver ici. Ne vous laissez pas intimider par l’ambiguïté du bouton Accepter et installer qui ne lance en fait que le téléchargement de la bête.

Dernier petit détail qui manque à l’écriture de notre petite recette, le paramètre d’installation silencieuse est tout simplement /qn.

Cuisinage de la chose

Le fichier Install.vbs se résume aux quelques lignes qui suivent 

Set WshShell = CreateObject("Wscript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")

'Récupération du chemin du dossier contenant le script en cours
strCheminDossierScript = objFSO.GetParentFolderName(Wscript.ScriptFullName)

'Installation silencieuse de Chrome
strCheminFichierInstall = strCheminDossierScript & "\GoogleChromeStandaloneEnterprise.msi"
WshShell.Run Chr(34) & strCheminFichierInstall & Chr(34) & " /qn", 0, True

 
On crée un ch’ti fichier Description.txt qui contient par exemple :

Installation de Chrome 11.0.196.57.

Dans un dossier Chrome (un nom donné comme ça au hasard!), on colle l’installateur téléchargé GoogleChromeStandaloneEnterprise.msi, ainsi que les fichiers encore tout chauds Install.vbs et Description.txt et le tour est joué.

Moteur de recherche par défaut

Forcément, quand on commence à mettre les mains dans le cambouis, on a du mal à s’arrêter.

De fait et en premier lieu, on peut s’attacher à dispenser l’utilisateur final de se cogner l’écran de sélection du moteur de recherche au premier lancement de Chrome. Google lui même n’est pas trop long à nous donner la réponse : ainsi apprend-on qu’il suffit de créer un fichier vide simplement nommé First Run dans le dossier C:\Users\Nom_Utilisateur\AppData\Local\Google\Chrome\User Data.

À ceci près qu’aussi longtemps que Chrome n’a pas été exécuté au moins une fois, il n’existe pas l’ombre d’un dossier Google dans C:\Users\Nom_Utilisateur\AppData\Local. Avant que de se lancer tête baissée dans la création du fichier First Run, il faut donc veiller à créer le dossier où il va faire son petit nid.

D’où les lignes qui suivent :

'Récupération du chemin du dossier de Chrome dans le dossier utilisateur
strCheminChrome = WshShell.ExpandEnvironmentStrings("%LOCALAPPDATA%") & "\Google"

'Création des dossiers "Google\Chrome\User Data"
If Not objFSO.FolderExists(strCheminChrome) Then
	Set dossierGoogle = objFSO.CreateFolder(strCheminChrome)
End If
strCheminChrome = strCheminChrome & "\Chrome"
If Not objFSO.FolderExists(strCheminChrome) Then
	Set dossierGoogle = objFSO.CreateFolder(strCheminChrome)
End If
strCheminChrome = strCheminChrome & "\User Data"
If Not objFSO.FolderExists(strCheminChrome) Then
	Set dossierGoogle = objFSO.CreateFolder(strCheminChrome)
End If

'Création du fichier "First Run"
strFirstRun = "\First Run"
Set fichierFirstRun = objFSO.CreateTextFile(strCheminChrome & strFirstRun)

Préférences

Si vous ne vous lassez toujours pas de sodomiser les coléoptères plus ou moins volatiles, vous pouvez également être tenté de définir une page d’accueil et d’afficher par défaut le bouton Accueil dans la barre d’outils. Ces éléments sont conservés dans le fichier Preferences lui même soigneusement dissimulé dans C:\Users\Nom_Utilisateur\AppData\Local\Google\Chrome\User Data\Default.
Comme nous l’avons déjà évoqué, ce dossier est créé au premier lancement de Chrome. Avant que de songer à y coller un quelconque fichier Preferences, il faut donc le créer par nous-mêmes avec nos petits doigts boudinés. D’où les lignes qui suivent :

'Chemin du fichier "Preferences" à copier
strCheminPref = strCheminDossierScript & "\Preferences"
'Si le fichier "Preferences" existe, on crée le dossier "Default" et on l'y copie
If objFSO.FileExists(strCheminPref) Then
	strCheminChrome = strCheminChrome & "\Default"
	If Not objFSO.FolderExists(strCheminChrome) Then
		Set dossierGoogle = objFSO.CreateFolder(strCheminChrome)
	End If
	objFSO.CopyFile strCheminDossierScript & "\Preferences", strCheminChrome & "\", True
End If

 
Le fichier Preferences, quant à lui, est un bête fichier texte dénué d’extension et dont le contenu vaut par exemple :

{
   "browser": {
      "show_home_button": true
   },
   "homepage": "http://www.google.fr/",
   "homepage_is_newtabpage": false
}

Définir Chrome comme navigateur par défaut

Pour finir, vous êtes en droit de suggérer fortement à l’utilisateur final le recours à Chrome comme navigateur par défaut.
Vous vous en doutez, ce choix est enregistré dans la base de registre et repose sur ces quelques lignes :

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Clients\StartMenuInternet]
@="Google Chrome"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.htm\OpenWithProgids]
"htmlfile"=hex(0):
"ChromeHTML"=hex(0):

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.htm\UserChoice]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.htm\UserChoice]
"Progid"="ChromeHTML"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.html\OpenWithProgids]
"htmlfile"=hex(0):
"ChromeHTML"=hex(0):

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.html\UserChoice]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.html\UserChoice]
"Progid"="ChromeHTML"

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice]
"Progid"="ChromeHTML"

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice]
"Progid"="ChromeHTML"

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice]
"Progid"="ChromeHTML"

 
Vous n’aurez pas manqué de noter qu’on supprime les clés de type
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.ext\UserChoice]
avant de les recréer pour en modifier le contenu. Il se trouve en effet que leur contenu est protégé en écriture.
Le moyen le plus radical et en même temps le plus simple pour s’arroger le droit de les modifier est tout simplement de les détruire au préalable.

Au final, il suffit de copier l’ensemble dans un fichier Chrome.reg et de compléter Install.vbs :

'Déclarer Chrome en tant que navigateur par défaut
strCheminFichierReg = strCheminDossierScript & "\Chrome.reg"
If objFSO.FileExists(strCheminFichierReg) Then
	WshShell.Run "regedit /s " & Chr(34) & strCheminFichierReg & Chr(34), 0, True
End If

Conclusion et téléchargement

Le dossier Chrome contient donc au final :

  • l’installateur GoogleChromeStandaloneEnterprise.msi.
  • le fichier texte descriptif Description.txt.
  • le fichier Install.vbs.
  • éventuellement, le fichier Chrome.reg qui définit Chrome comme navigateur par défaut.
  • éventuellement encore, le fichier Preferences.

Comme à mon habitude, je vous livre ici la chose allégée de l’installateur qu’il vous revient d’aller chercher .
 

Page vue 4 305 fois

Laissez une réponse