0

我制作了一个包含 npruntime 插件的简单 html 页面,它在本地运行良好。当然,npruntime 对象文件(npmyapp.dll)已经注册,所以浏览器可以加载插件。

(加载插件代码类似于..)

<embed type="application/x-mytestapp" width="400" height="200">

我想知道的是,如果浏览器找不到插件,如何要求安装。

例如,当我们在安装 Flash Player 之前浏览包含 Flash Player 的网站时,浏览器会询问安装。如何?

任何帮助将不胜感激。谢谢!

4

1 回答 1

0

不能 100% 确定您是否可以使用嵌入标签(嵌入标签多年来一直是奇怪的问题;我避免使用它们并改用对象标签),但您可以将代码放在只会显示的对象标签中如果找不到您的插件。

<object type="application/x-mytestapp" width="400" height="200">
    <a href="http://mytestapp.com/plugin/plugin_installer.msi">You are missing a plugin; click here to download it</a>
</object>

也就是说,我首选的安装方法是使用 javascript 来检测它是否已安装,您可以通过查看 navigator.plugins 并枚举并检查 mimetype 或按名称查找它来完成。

FireBreath有一个示例 javascript 检测器/注入器来演示这一点:https ://github.com/firebreath/FireBreath/blob/master/Installer/js/fb_installer.js

于 2012-01-25T16:18:05.757 回答