This document explains how to "install" Firefox and Thunderbird extensions using the Windows Registry. This mechanism is designed to make it easier for third-party installers to register extensions with Firefox and Thunderbird.
Installation is performed by writing a Registry entry under one of the following keys:
Where Vendor and Name are the values returned from the corresponding properties of nsIXULAppInfo. In Mozilla products, Vendor is "Mozilla", and Name is the short name of the product, e.g.:
Or on Windows 7/x64:
The ID of the extension must be used as the name of the Registry entry. The Registry entry must have a type of
REG_SZ, and its value must be an absolute path to the folder containing the extension (i.e., the location of the unpacked XPI). For example, to install the extension described in the Building an Extension article, create a Registry entry with name equal to
email@example.com and value equal to
After the Registry entry is created, Firefox/Thunderbird will notice the change the next time it is launched. It is safe to modify the Registry keys while Firefox/Thunderbird is running.
If the same extension appears under both
HKEY_LOCAL_MACHINE, then the instance under
HKEY_CURRENT_USER will be used. If the same extension appears in the user's profile directory (via manual install), then it will take precedence over any instances found in the Registry.
Extensions installed using the Windows Registry may be uninstalled by simply removing their corresponding Registry entry. After the Registry entry is removed, Firefox/Thunderbird will notice the change the next time it is launched. It is safe to modify the Registry keys while Firefox/Thunderbird is running.
Firefox doesn't automatically notice changes to
install.rdf at restart. This is because it checks the modification time of the add-on directory before checking
install.rdf. You can force Firefox to notice changes by deleting and recreating the directory, or by touching the modification time of the directory.
Plugins seem to follow a somewhat different system, at least with Firefox 9.0 on Windows 7.
Installation can be performed by creating any one of the following Registry keys:
And on 64-bit Windows:
Note: It appears that plugins are loaded from all of these registry keys.
The key must have a value named
Path with type
REG_SZ, containing the fully-qualified path of the plugin's DLL. The key may have other values, for example Description, ProductName, Vendor, Version, and GeckoVersion.