如何从插件重置浏览器

时间:2013-07-26 05:48:06

标签: windows npapi firebreath browser-plugin

我为浏览器制作了一个firebreath插件(Windows)。现在我更新了插件 - 但是在加载插件之前无法升级dll插件。

如何重新启动浏览器以刷新插件?或者作为可以从浏览器缓存中下载的插件?

2 个答案:

答案 0 :(得分:1)

我看到的选项是:

  • 告诉用户在安装/更新后重新启动浏览器
  • 告诉用户在继续安装之前关闭浏览器

请注意,您仍可能在更换DLL时遇到问题。例如Flash确实使用版本(例如npYourPlugin_1_2_77.dll)为其文件名添加后缀,因此文件锁定没有问题。

如果你这样做,你可能甚至不需要重新启动浏览器就可以调用navigator.plugins.refresh()(自Firefox 17起作用,但不确定其他浏览器)。

另请注意,我不确定ActiveX插件(IE),如果你也需要支持它 - 也许紫杉醇会在这个以及我没有遇到的其他场景中插入。

答案 1 :(得分:0)

升级firebreath插件的步骤是

  1. 通过NSIS制作插件安装程序。
  2. 在安装开始时,检测插件是否被任何浏览器占用。
  3. 关闭目前正在使用该插件的所有浏览器。
  4. 卸载以前版本的插件。
  5. 在最新版本号的文件夹中安装新版本的插件。
  6. 安装结束时,重新启动之前关闭的浏览器,然后导航到所需的网址。
  7. 顺便说一下,就像Georg提到的那样,在检查插件版本后你不需要重新启动Chrome和Firefox,这意味着您可以升级插件并立即使用新插件。 但是,您必须重新启动IE,因为当您获得activex控件的版本时,您必须实例化它,这会使插件首先加载。

    现在,它运作良好且符合预期。