2010-04-21 125 views
2

如何在Windows上安装,更新和卸载FireFox扩展?FireFox API安装扩展

文章(https://developer.mozilla.org/en/Adding_Extensions_using_the_Windows_Registry)似乎是一个传统的信息...

我已经安装了Firefox 3.6.3。 但是,我不看 “HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\火狐\扩展” 在我的注册表:


[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox浏览器]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox的\ 3.6.3(EN-GB)]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox的\ 3.6.3(EN-GB)\主要]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox的\ 3.6.3(EN-GB)\卸载]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox浏览器3.6.3]

[HKEY_LOCAL_MACHINE \ SOFTWARE \的Mozilla \ Mozilla Firefox浏览器3.6.3 \二进制]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Mozilla的\ Mozilla Firefox浏览器3.6.3 \扩展]


例如,我想安装my_ext.xpi(ID:my_ext @ my_site.com,路径:c:\ myapp \ ff_a ddons \ my_ext.xpi)。

你能说说我该如何安装我的扩展?

哪个firefox的版本支持这种方法?

回答

0

您是在谈论扩展还是插件?

扩展通常通过Firefox打开.xpi文件来安装。 .xpi文件只是带有清单(.rdf)的.zip文件以及各种脚本和库。您可以通过创建正确的目录结构来手动安装它。在我的机器分机上住:C:\Users\[username]\AppData\Roaming\Mozilla\Firefox\Profiles\[random-number].default\extensions。您在那里创建一个名为[email protected]的子目录,然后在子目录中解压缩XPI的内容。下次用户重新启动Firefox时,您的扩展程序将被安装。但有几个疑难杂症:

  1. 用户必须手动重新启动Firefox。
  2. 如果存在多个配置文件,则不知道使用哪个配置文件。该配置文件由上面的[随机数]标识。许多用户有不止一个配置文件。
  3. 在Mac和Linux上,这是一个不同的目录,尽管应用了相同的基本思路。

插件就像在网页中运行的Flash一样。您可以通过设置注册表项来安装这些文件,但我认为一般而言,Firefox有一个着名的文件夹,其中包含以NP(例如NPSWF32.dll)开头的任何内容。严重的是,它寻找NP。并且每个插件都必须导出Firefox用来协商......的东西的某些NPAPI函数。

+0

我说的扩展。 我知道.xpi等... 我想在安装Windows应用程序的过程中安装(更新,卸载)扩展功能。 – 2010-04-22 07:24:10

+0

@cpp_fanatic:我已经更新了我的答案。 – 2010-04-22 14:47:31

+0

但是,如果您希望将其部署到所有用户,则确实应该使用Windows注册表方法。 – sdwilsh 2010-04-22 16:57:32

1

windows registry method不是传统方法,它是为机器上的所有用户(以及所有Firefox配置文件)安装插件的受支持方式。

我很好奇为什么你觉得这是一个传统的方法。

+0

嗯,我认为你可以帮助我;)我已经更新了我的问题。 还有一个问题(对我来说不重要,但是......): FireFox 3.6.3忽略了参数“-install-global-extension”。 未来会支持这个参数吗? – 2010-04-23 10:58:09

+1

不,该参数不再受支持(这就是注册表方法存在的原因)。关于堆栈溢出,还有一些其他Windows注册表安装问题,可能会帮助您解决更新的问题,但我不知道答案。 – sdwilsh 2010-04-23 17:48:59

2

默认情况下,扩展注册表项(HKEY_LOCAL_MACHINE \ Software \ Mozilla \ Firefox \ Extensions)不存在 - 只需创建它并在Mozilla的说明(链接到)中详细说明注册您的扩展。

这种方法对我来说已经工作了一年多了。

你也有另一种选择(这也适用于非Windows机器):Installing Extensions