Office 365 - Détermination de la configuration installée

Problème

La reconfiguration d'une installation existante d'Office 365, et plus généralement des versions "Click 2 Run", se fait par le même mécanisme que celui utilisé lors de l'installation : l'application d'un fichier de configuration XML précisant les composants à installer ou désinstaller.

S'il n'y a qu'un seul composant pouvant varier d'un poste de travail à un autre (exemple : présence d'Access ou non), cela nécessite de gérer 2 fichiers de configuration d'installation.

Si d'autres composants sont à prendre en compte (exemple : Publisher, Lync, OneDrive, ...), le nombre de combinaison possibles devient très vite ingérable.

Il faut donc être en mesure de déterminer les composants présents sur le poste, afin de régénérer un fichier de configuration d'installation adapté au contexte spécifique du poste de travail ciblé.

Les éléments décrits ci-dessous permettent de réaliser ce type d'opération.

Détection de l’installation

La présence d'une version d'Office 365 se fait par la détection de l'installation du composant "Click 2 Run licensing" de cette version :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90160000-008F-0000-1000-0000000FF1CE}

  • Version

Pour une version Office 2016, le composant est détecté ainsi :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90160000-007E-0000-1000-0000000FF1CE}

  • Version
     

Dans les 2 cas, la valeur "Version" comporte le numéro de version d'Office, sous forme hexadécimale.

Exemple : Version =0x100023a6 correspond à 16.0.9126, soit la version 1803.

Configuration

Les éléments principaux de la configuration sont donnés par les valeurs suivantes :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\Configuration

  • ProductReleaseIds

  • AudienceData

  • AudienceId

  • Platform

  • OfficeMgmtCOM

  • CDNBaseURL

  • UpdateChannel

ProductReleaseIds spécifie la liste des produits Office installés : Office proprement dit, mais aussi les produits annexes comme Visio et Project ; les valeurs correspondent au tag "Product ID" de la configuration XML, et sont séparées par des virgules.

Exemple : O365ProPlusRetail,VisioStdXVolume,ProjectProRetail

AudienceData indique le canal de mise à jour utilisé.

Exemples :

  • Production::DC correspond au Canal Semi Annuel courant
  • Production::DCEXT correspond au Canal Semi Annuel précédent (à confirmer, apparu en juillet 2018 pour la version 1708 SA)
  • Insiders::FRDC correspond au Canal Semi Annuel Ciblé
  • Production::CC correspont au Canal Mensuel

AudienceId donne la même information que AudienceData, mais sous la forme d'un UID. L'UID est utilisé dans les URLs CDNBaseURL et UpdateChannel, sauf pour le Canal Semi Annuel précédent, qui utilise pour l'instant les URLs correspondant au Canal Semi Annuel courant.

Exemples :

  • 7ffbc6bf-bc32-4f92-8982-f9dd17fd3114 : Canal Semi Annuel courant
  • 89815e81-c82e-49a3-99dc-2b99229cf632 : Canal Semi Annuel précédent
  • b8f9b850-328d-4355-9145-c59439a0c4cf : Canal Semi Annuel Ciblé
  • 492350f6-3a01-4f97-b9c0-c7c6ddf67d60 : Canal Mensuel

CDNBaseURL indique l'URL de téléchargement des sources de la version installée

UpdateChannelindique l'URL de téléchargement des mises à jour

Exemples:

Platform indique la variante des binaires installée.

  • x86 = 32 bits
  • x64 = 64 bits

Il peut y avoir, dans le cas des produits permettant la sélection de composants à exclure de l'installation, une entrée supplémentaire, sous la forme <Product ID>ExcludedApps ; les valeurs correspondent au tag "ExcludeApp ID" de la configuration XML, et sont séparées par des virgules.

Exemple :

  • O365ProPlusRetailExcludedApps = access,onedrive
    Indique que la version d'Office installée ne comporte ni Access, ni OneDrive

OfficeMgmtCOM indique si la gestion des mises à jour est opérée par SCCM ou non.

  • True = mises à jour depuis SCCM
  • False ou absent = mécanisme de mise à jour standard

Langues installées

La détection des langues installées est un peu plus complexe, différant potentiellement entre Office proprement dit et les produits complémentaires.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\ProductReleaseIDs

  • ActiveConfiguration

ActiveConfiguration indique la sous-clef de registre à lire pour obtenir la liste des langues prises en compte par Office.

Exemple :

  • ActiveConfiguration = EBE10E31-ABBD-42F3-8CE5-BBA385BCC9AA

Les langues installées sont indiquées par la présence d'une série de clef de registre, sous la forme :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\ProductReleaseIDs\<ActiveConfiguration>\culture\xx-xx.16

Pour chaque langue installée, une clef xx-xx.16 est présente, xx-xx correspondant au tag "Language ID" de la configuration XML.

Exemple :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\ProductReleaseIDs\EBE10E31-ABBD-42F3-8CE5-BBA385BCC9AA\culture\fr-fr.16

Pour les produits complémentaires, les clefs à prendre en considération sont :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\ProductReleaseIDs\<ActiveConfiguration>\<ProductID>.16\xx-xx.16

Exemple :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\ProductReleaseIDs\EBE10E31-ABBD-42F3-8CE5-BBA385BCC9AA\VisioProRetail\fr-fr.16

Tags: