Cet article nécessite une relecture technique. Voici comment vous pouvez aider.
Introduction
Ce document explique comment installer des extensions pour Firefox et Thunderbird en passant par le Registre Windows. Ce méchanisme est pensé pour faciliter l'enregistrement d'extensions par des installeurs tiers.
Installation
L'installation s'effectue en écrivant une entrée dans le Registre Windows, il y a deux possibillités :
HKEY_CURRENT_USER\Software\Vendeur\Nom\Extensions HKEY_LOCAL_MACHINE\Software\Vendeur\Nom\Extensions
Vendeur et Nom sont les valeurs retournées par les propriétés de nsIXULAppInfo. Dans les produits de Mozilla, Vendeur et "Mozilla" et Nom est le nom du produit (Firefox, Thunderbird), ex :
HKEY_CURRENT_USER\Software\Mozilla\Firefox\Extensions HKEY_CURRENT_USER\Software\Mozilla\Thunderbird\Extensions
Ou sous Windows 7/x64 :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Firefox\Extensions HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Thunderbird\Extensions
L'ID de l'extension doit être utilisée comme nom de l'entrée de Registre. L'entrée de Registre doit être du type REG_SZ
et sa valeur doit être le chemin absolu du dossier contenant l'extension (la location du XPI décompressé). Par exemple, pour installer l'extension décrite dans l'article de Création d'une Extension il faut créer l'entrée de registre ayant pour nom [email protected] et pour valeur c:\extensions\monExtension
.
Après avoir créé l'entrée de registre, Firefox ou Thunderbird se rendra compte du changement au prochain lancement. La modification des entrées de Registre alors que Thunderbird ou Firefox est lancé ne comporte pas de risque.
Si les mêmes extensions apparaîssent dans HKEY_CURRENT_USER
et HKEY_LOCAL_MACHINE
ce sera l'extension contenue dans HKEY_CURRENT_USER
qui sera utilisée. Si l'extension apparaît également dans le dossier du profil de l'utilisateur (après une installation manuelle), elle prendra le dessus de n'importe quelle instance trouvée dans le Registre.
Désinstallation
Les extensions installées avec le Registre Windows peuvent être simplement désinstallées en supprimant l'entrée de Registre y correspondant. Après la suppression, Firefox ou Thunderbird se rendrons compte du changement au prochain lancement. La suppression des clés de Registre alors que Thunderbird ou Firefox est lancé ne comporte pas de risque.
Mise à jour
Firefox ne se rend pas automatiquement compte des changements de install.rdf
car il vérifie la date de modification du répertoire de l'extension avant de vérifier install.rdf
. Il est possible de contourner le problème en supprimant et recréant le répertoire ou en modifiant la date de modification.
Plugins
Avec Windows 7 et Firefox 9.0 (d'autres cas possibles) le fonctionnement des plugins et quelque peu différent.
L'installation se fait en créant une des deux entrées suivantes :
HKEY_CURRENT_USER\Software\MozillaPlugins\plugin-id HKEY_LOCAL_MACHINE\Software\MozillaPlugins\plugin-id
Sur un Windows 64 bits :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MozillaPlugins\plugin-id
Où plugin-id correspond à l'id de l'extension (contenue dans install.rdf
), en suivant l'exemple précédant : [email protected]
Note : Il semblerais que les plugins soient chargés depuis tous les types de clé de registre.
La clé de Registre doit avoir comme valeur nommée Path
de type REG_SZ
contenant un chemin absolu vers le DLL du plugin. La clé peut avoir des valeurs supplémentaires, comme Description, ProductName, Vendor et GeckoVersion.